Page 2 of 4
Re: Thoughts on a one-click installer
Posted: Thu Jan 26, 2023 7:20 pm
by Daedalus
TomXP411 wrote: ↑Thu Jan 26, 2023 6:01 pm
I guess I did skip the "why."
The thing I'm seeing is comments in the files section and elsewhere about "how do I run this game?" I feel like this presents a bit of a stumbling block...
I've thought the same thing many times. But I don't think you can fix this any further than it's been fixed already. But then, perhaps using nothing but Linux has spoiled me, I've never bothered with the -sdcard image switch and just download, unzip into a directory, then run the emulator from that directory.
Oh. That's what's different... I use the command line like I don't care. Kids nowadays expect the computer to magically track stuff and all you gotta do is click the icon. Would the easiest way to fix that be to put a "How to run games you download." post up at the top of the forum with super detailed instructions for all operating systems?
Re: Thoughts on a one-click installer
Posted: Thu Jan 26, 2023 10:11 pm
by Daedalus
Ok. So I created a FAT32 image and copied my project into it just to be sure I could. I could put the commands to do that into the compile and run script, so that's no big deal if I need to to upload programs.
Then I started the emulator with the proper -sdcard image and ran it. It ran fine with the added advantage of being able to use the DOS"" commands from the BASIC prompt to go into directories. Man, navigating that is painful. Perhaps if I got enough practice it would be easier or seem more ... umm... "intuitive."
Now I gotta ask what I'm assuming is a really dumb question.
What is the advantage to using the -sdcard <sdcard.img> switch over running the emulator from the directory the files are in? I mean... doesn't the sdcard image still have to be in a directory the emulator knows about?
Re: Thoughts on a one-click installer
Posted: Thu Jan 26, 2023 10:27 pm
by desertfish
You can provide a full path to the sdcard image file.
Also, the behavior of the disk I/O routines differ between sdcard and host filesystem. By quite a lot in favor of the sdcard image. Although this is improved much by a code pull-request that has been made for the emulator recently, but which has not yet been merged.
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 12:04 am
by TomXP411
Daedalus wrote: ↑Thu Jan 26, 2023 10:11 pm
What is the advantage to using the -sdcard <sdcard.img> switch over running the emulator from the directory the files are in? I mean... doesn't the sdcard image still have to be in a directory the emulator knows about?
DOS is not fully implemented in the host filesystem driver. (What you're using when you have loose files and are not using the -sdcard switch.) The CD command doesn't work, and directories aren't even listed. A few other things don't work, either, including the "Position" command (necessary for packing large amounts of data into a single data file.)
So you can't change directories or do a few other things that you can do with files in an SD card image. This means no organizing files into subdirectories to make them easier to sort. This is why I've been suggesting to people that ask "how do I run this?" that they copy the minimum install to a clean directory, then add the downloaded game.
The next version of the emulator should have feature parity between host filesystem and SD drivers, so we won't need to load files into SD if we want fully featured installs.
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 6:56 am
by Cyber
TomXP411 wrote: ↑Thu Jan 26, 2023 6:01 pm
The thing I'm seeing is comments in the files section and elsewhere about "how do I run this game?" I feel like this presents a bit of a stumbling block for people that aren't used to actually having to operate their computers from the command line, and I think a standardized menu and install framework would make it easier for people who have never typed a DOS command and have always let the OS manage their software installs.
This looks to me like the only argument in favor of installer - lowering the enter barrier for modern PC users. But at the same point it ruins the idea of X16 being an educational retro system. With installer X16 will kinda try to mimic modern click-and-run computers. But in my opinion it would be much better to include a friendly documentation on how to run programs (VIC-20 user manual style). The hard part might be how to make new users read this documentation before using the system, because modern users got used that modern computers are intuitive to use.
Thinking in other perspective, making new users run programs the hard way, may actually lower the sales of X16. So such intaller might also be a product saver for any retro system in a modern world. But this is a thing for boss, David, to decide.
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 2:50 pm
by Jestin
For about a year, I've had a TheC64 Maxi, which by default boots to "Carousel Mode" to launch the pre-loaded games. This is certainly the way to make a retro machine more accessible to modern, inexperienced users. But I don't really think this behavior would make a good default for the X16.
However, I liked the launcher that was set up at the Vintage Computer Fest Midwest last fall. I don't know how that worked, but I assume that different games/demos were put into subdirectories on the SD and then manually tied to the UI. Perhaps there could be a similar launcher (maybe even shipping in a ROM bank) that simply traversed the SD filesystem looking for subdirectories that contain an `AUTOBOOT.X16` file or something similar. Those directories show up on a menu and can be launched much like the VCF Midwest booth demo.
With something like that in place, I would see the need for a one-cilck installer to put new games into their proper place on the SD card. We could create two new BASIC commands; one to run the launcher, and one to run the installer that adds games to the launcher. The problem is, I don't know what you'd point that second command at. In order to work, the target file/directory would already have to be packaged on the SD card in some standard way. If that's true...why not just put it where the launcher can read it in the first place? Why use an installer at all?
This was all just a bunch of thinking out loud, but I think in order to know what an installer would do, we first need to define how the launcher works.
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 4:38 pm
by StephenHorn
Cyber wrote: ↑Fri Jan 27, 2023 6:56 am
But in my opinion it would be much better to include a friendly documentation on how to run programs (VIC-20 user manual style). The hard part might be how to make new users read this documentation before using the system, because modern users got used that modern computers are intuitive to use.
I like this thought a lot. If someone can/will restore the web build of x16emu, I think it would be really neat to build a page that launches the emulator on the right side of the screen and on the left side showed something that looked like a page from a classic spiral-bound computer manual instructing them how to launch the software.
Bonus points if that same someone were to hook up a little javascripting to enable some simple, non-animated page-flipping to a BASIC primer...
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 7:34 pm
by Jestin
StephenHorn wrote: ↑Fri Jan 27, 2023 4:38 pm
on the right side of the screen and on the left side showed something that looked like a page from a classic spiral-bound computer manual instructing them how to launch the software
Although it's been a couple weeks since I added anything, I'm still trying to put some effort towards this:
https://github.com/jestin/x16-user-guide. Any help is much appreciated.
But to your point, it wouldn't be hard to run a separate build of this manual to generate a PDF of just a section on launching software. From there, it's not hard to find a web-based PDF viewer to display it.
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 11:07 pm
by TomXP411
Jestin wrote: ↑Fri Jan 27, 2023 2:50 pm
With something like that in place, I would see the need for a one-cilck installer to put new games into their proper place on the SD card. We could create two new BASIC commands; one to run the launcher, and one to run the installer that adds games to the launcher. The problem is, I don't know what you'd point that second command at. In order to work, the target file/directory would already have to be packaged on the SD card in some standard way. If that's true...why not just put it where the launcher can read it in the first place? Why use an installer at all?
This is a good point; we don't really need an installer, if people can figure out the basic steps of "put your files here." The installer was just a way to automate that procedure (and which people seem decidedly against. So I'm dropping that idea.)
We don't want the launcher to have to scan the file system every time; that would be an annoying wait. However, we could do a one-time scan with the F1 key or something.
For that, we'd still need a manifest. That might look like this (in PETSCII upper/graphics):
NAME:X16-EDIT
BY:STEFAN B JAKOBSSON
DESC:EDIT TEXT FILES AND PROGRAM SOURCE FILES
CATEGORY:PRODUCTIVITY
RUN:X16EDIT.PRG
README [[
The usual stuff you'd see in a readme file, abbreviated and converted to PETSCII upper/graphics text.
]]
I figure the launcher could also scan AUTOBOOT.X16 files contained in a subdirectory, then scan BASIC programs for the same metadata, contained in REM statements.
So the only thing we'd be asking developers to do is add this simple text file to their packages. We should always put some header text in our programs anyway, so this just gives us a common format that makes it easy to populate menu systems.
Re: Thoughts on a one-click installer
Posted: Fri Jan 27, 2023 11:35 pm
by TomXP411
StephenHorn wrote: ↑Thu Jan 26, 2023 6:58 pm
But right now, the best interim solution might be to ask software developers to submit downloads here on the forums in the form of an SD card image, or an SD card image in a zip file. That way, folks who want to run software from here don't need to worry about loose file support or building their own SD card images, and can just run the emulator with an appropriate -sdcard parameter.
Honestly, I'd rather they didn't. The smallest you can make an SD card is 32MB, and that's another obstacle for people without a lot of experience with such things.
The only time we need to upload an SD image is if the enclosed program uses features that don't work on the host filesystem, such as Position, or needs files in subdirectories, for whatever reason.