Malvineous wrote:MrFlibble wrote:Because you propose the *.dos file to be "a read-only master copy of the game", and the game needs to be installed locally in order to be played (more on this below), then why not just have DOSBox perform the installation by unzipping the contents from that original ZIP?
The problem is, this format should be usable on more than just desktop PCs. It should work on phones, tablets, and especially in the browser. I think you would get a lot of complaints from site visitors if you go to a page that says "Play this game in your browser!" and it only comes up with an installer asking you where you want to install it. Then Windows users could rightly assume the game was installed on their real C: drive (not the emulated DOS one) and complain that the installer doesn't work because they can't find the game on their real C: drive, or that they are trying to install the game on their D: drive and the installer says it can't find drive D...
Frankly I did not think about handhelds and browser-based playing options. I am entirely unfamiliar with how handheld devices work, but I would assume they require some kind of installation as well? Even without a "full" local installation the *.sav file would need to be stored somewhere, right?
BTW, how is this *.sav thing going to work? Will it require modifying the original game? To the best of my knowledge, many DOS games just expect the configuration and/or save game files to be in the same directory as where the game itself is installed. I guess it might be possible in DOSBox to somehow make the game believe that two different locations are in fact one and the same, but I would like to know the actual mechanics you propose (I haven't found an explanation in your document).
As for sites offering to play in your browser, I thought that the games have to be pre-configured somehow by the site administrators before play? So they would go through the installation process before the players access the game?
At any rate, the only solution that would allow a compromise would probably be either (a) to include both the original file and the pre-installed copy, or (b) just run a parallel archival process wherein original distributions are preserved in their unmodified state and derivative *.dos "ready-to-play" packages are produced from such distributions.
Malvineous wrote:I am hoping to avoid including external programs in the .dos file, because if you have a collection of a few thousand games, you'll end up with lots of duplicate data if every single .dos file has an unzip utility inside it. If this was the way to go, it would be better to include an unzip utility within DOSBox and make it accessible from the internal Z: drive.
Well I guess this can work if you convince vanilla DOSBox to include Info-ZIP and this becomes a standard. Otherwise the unzip executable is just a few dozen kebibytes long and shouldn't impact the size of a *.dos distribution.
Malvineous wrote:I think it would be best to do this for all games, not just ones deemed to take a long time to install. For all games you can choose to run the game or run the installer. But then if you run the installer from the .dos package directly, the emulated C: drive will be inside the .dos package, so where do you install the game to? I think if you were to run the installer, you'd have to unzip the .dos package and run the install file yourself?
Well, if the size is not of a problem then that would probably be an optimal solution.
However I'm still unclear on some aspects of how the whole system would work. I've just realized that I'm thinking of the *.dos format basically in terms of a game CD analogy, whereas apparently this is not exactly how you envisage it.
For example you mention above that running a *.dos package would mount its contents as a C: drive, while I had assumed that it would be treated as a CD-ROM or similar read-only device. After all, there are actual DOS games that run off the CD without the need for a HDD installation, storing only modifiable files very similar to what you describe with the *.sav files. Hence I followed this CD analogy.
Malvineous wrote:The problem with this is how do you handle the .dos package being run within a web browser using em-dosbox, the Javascript port of DOSBox? You can't install locally because you don't have (or want) access to the local disk. Having users run installers inside a browser is going to get in the way.
As I mentioned above, I assumed that the site admins would have to somehow pre-configure the games? Again, having the option to either install or run a pre-installed ready-to-play copy should solve this issue I suppose
Malvineous wrote:As far as the game is concerned, nothing will be read only. Every file can be modified, but doing so would cause DOSBox to put the modifications in the .sav file. Saying the .dos file is read-only is just to make it clear that DOSBox won't modify it - it doesn't have to have any read-only attributes set.
Again, I would appreciate if you explained this process in detail. Does DOSBox in its present state already support similar manipulations? Or will this require to modify either DOSBox, the game, or both?
Malvineous wrote:MrFlibble wrote:If the local installation method is used, setting up the game would be as easy as creating this local copy (from either pre-installed files or the original installer routine) and copying into the local game folder a pre-set configuration file(s) that is already supplied with the *.dos distribution and is tailored to the intended DOSBox configuration.
The problem is that this isn't actually that easy for many people. For archivists and people who grew up with DOS sure, but for everyone else it's too complicated. That's why one goal with the proposed .dos package is to make it as simple as a .pdf file. You don't need to install a .pdf file to view it, you just click on a link in the browser, or save it on your desktop and double-click on it. I think a .dos package needs to work in the same way by default, to cater for the majority of people who don't care about the technicalities and just want to play the game immediately.
When I said "as easy as creating this local copy (from either pre-installed files or the original installer routine) and copying into the local game folder a pre-set configuration file(s) that is already supplied" I meant of course that this would be done automatically when the *.dos package is "activated" by the user. I suppose that a fancy graphical interface can be even set in place that would show a progress bar or something. I did not mean that a user would have to manually to anything except for maybe select a few options presented in a familiar format.
Malvineous wrote:A close-knit group would produce the most accurate results, but there are very few people willing to do the work, and many, many DOS games. The proposal includes a revision number in the .dos package, so it would be easy to download newer packages if there are changes. The wiki structure would allow you to revert unwanted changes and perhaps even review changes from new users before they are trusted to make changes on their own. As you can see from projects like Wikipedia, the more people you have involved, the greater the result! I still think a wiki style would work best, but you are right that you would have to be careful about who can make what changes or you would end up with rubbish.
Well, I wasn't trying to say that some people should be restricted from participating in this activity. It's just that at least for now it seems to me that preparing a distribution is more of a one-time job that should not require further revisions. Of course there are cases when for example we have not yet found an original distribution of a game, but if the game works in this non-original state (e.g. a pre-installed copy when the original distribution was an installer) this should be no problem from the user's perspective at all.
On a side note, Wikipedia works great because there is a dedicated group of moderators and admins who maintain, clean up and constantly improve articles. This is in fact additional effort which could be spared if there was a small group of editors who strictly followed set standards from the start. The problem is that Wikipedia is an endeavour too large to make this effective. Maintaining DOS games on the other hand seems to be on a somewhat smaller scale that could yield results without the need to recruit as many users as possible via an open to all model.
What I would like to clarify as well is how you suppose to treat multiple versions/releases of a game? Will each get a separate package? Or are you just going to stick with the latest known version of a game, assuming that it is also the most appropriate one? Some games are known to differ a lot across versions, with changes affecting levels, graphics, gameplay etc. Admittedly
Radix is somewhat of an extreme case here, but this is a question that will need to be addressed at some point.