Individually Bootable VHDs for Each Game

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

I'm an egomaniac that way.. built the tool for myself, no regard for usability by others. :-D At least, not yet. There are ways to go with this. Either I generate builds every time a game gets added/updated, or you get to upload your own YAML and the build takes place on demand just for you. Currently I'm considering the first method, but first things first: get all the kinks out of the script itself.

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Wonderful to see such an uptick in interest in my toolbox! Now I'm beginning to see a first-world problem: duplication of effort. As I'm typing this, I received game configs from two people and I'm also working on a few myself. So in order to streamline this a bit, and to prevent duplication of effort, let's use the issue reporter system GitLab provides:

https://gitlab.com/doscontainer/games/-/issues

Anyone who'd like to contribute to my centralized collection is more than welcome to do so. Just shoot me an e-mail address I can shoot a GitLab invite to, and I'll add you as a developer to this repo.

As a workflow I'd like to propose that all developers first create an issue, assign it to themselves, and only then start work on creating a game config. Requests can take the form of unassigned issues. Those interested can then just pick up unassigned games by assigning the issue to themselves.

User avatar
RealLarry
Top Contributor
Posts: 776
Joined: Mon May 25, 2020 4:04 am
Location: San Junipero/DE/Earth
Has thanked: 93 times
Been thanked: 335 times

Re: Individually Bootable VHDs for Each Game

Unread post by RealLarry »

A quick overview of the latest additions and what is working where (or not):

Seven Cities of Gold / pcem: yes MiSTer: yes
Another World / pcem: yes MiSTer: yes (<- Disable L1 Cache)
Archon Ultra / pcem: yes (wrong colors) MiSTer: yes
Blood / pcem: yes MiSTer: yes (slow)
Comanche - Operation White Lightning / pcem: yes MiSTer: yes
Epic / pcem: yes MiSTer: no
Flashback - The Quest for Identity / pcem: yes MiSTer: yes
The Great Giana Sisters / pcem: yes MiSTer: yes
Gods / pcem: yes MiSTer: yes
Magi Carpet / pcem: yes MiSTer: yes
Magic Carpet 2 - The Netherworlds / pcem: yes MiSTer: yes
Prince of Persia 2 - The Shadow and the Flame / pcem: yes MiSTer: yes
Populous / pcem: yes MiSTer: yes
Populous 2 - Trials of the Olympian Gods / pcem: yes MiSTer: yes
Syndicate / pcem: yes MiSTer: yes
Syndicate Wars / pcem: yes MiSTer: yes
The Incredible Machine / pcem: yes MiSTer: yes (<- Use ao486_boot_switcher)
Terminal Velocity / pcem: yes MiSTer: yes
Ultima Underworld - The Stygian Abyss / pcem: yes MiSTer: yes
Ultima Underworld 2 - Labyrinth of Worlds / pcem: yes MiSTer: yes

Contributor of tty2oled, author of tty2tft, tty2rpi and update_tty2xxx
flynnsbit
Top Contributor
Posts: 552
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 183 times
Been thanked: 308 times
Contact:

Re: Individually Bootable VHDs for Each Game

Unread post by flynnsbit »

The Incredible Machine Needs the other VGA bios for it to work on mister. https://github.com/sethgregory/ao486_boot_switcher

User avatar
RealLarry
Top Contributor
Posts: 776
Joined: Mon May 25, 2020 4:04 am
Location: San Junipero/DE/Earth
Has thanked: 93 times
Been thanked: 335 times

Re: Individually Bootable VHDs for Each Game

Unread post by RealLarry »

Great find! I have tried to play with the not-running ones and univbe but had no luck. I'll try the other video bios with them...

Contributor of tty2oled, author of tty2tft, tty2rpi and update_tty2xxx
User avatar
NML32
Posts: 296
Joined: Sun May 24, 2020 6:57 pm
Has thanked: 280 times
Been thanked: 50 times

Re: Individually Bootable VHDs for Each Game

Unread post by NML32 »

Try disabling L1 cache for Another World. This works for me.


metadata:
title: Another World
publisher: Interplay
year: 1991
comment: Disable L1 Cache
diskname: anworld.vhd
disklabel: ANWORLD
disksize: 3
distfiles:

  • name: anworld.zip
    checksum: 8c6b2d87b5456130a8f8db6686b6e211edbf160540205efb9b391a8c70a98825
    drivers:
  • HIMEM
  • CUTEMOUSE
  • AO486
    gamefiles:
  • ANWORLD
    os: MSDOS622
    AUTOEXEC: |
    @ECHO OFF
    C:\DRIVERS\AO486\sysctl sys L1-
    PATH=C:\DOS
    cd C:\ANWORLD
    another.exe
    CONFIG: |
    DOS=HIGH
    FILES=50
User avatar
thera34
Posts: 107
Joined: Fri Sep 11, 2020 7:51 am
Has thanked: 84 times
Been thanked: 59 times

Re: Individually Bootable VHDs for Each Game

Unread post by thera34 »

For Magic Carpet 2 - The Netherworlds you need to replace (copy over and rename) DOS4GW.exe with DOS32A.

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Framework got a small update, should run ok on BSD and Macs again now.

User avatar
RealLarry
Top Contributor
Posts: 776
Joined: Mon May 25, 2020 4:04 am
Location: San Junipero/DE/Earth
Has thanked: 93 times
Been thanked: 335 times

Re: Individually Bootable VHDs for Each Game

Unread post by RealLarry »

Fixed version of Archon Ultra, Magic Carpet 2 and The Incredible Machine uploaded. Waiting for approval. Merged!

Contributor of tty2oled, author of tty2tft, tty2rpi and update_tty2xxx
Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Somewhat otherwise engaged these days, but will check! Thanks!

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Whew, Jenkins (I know.. I know.. should move this to GitLab CI) now builds and publishes the disk images automatically with every merge to main. Now I need to write a script that picks up the YAML's, reads the metadata, and cooks all of that into a HTML table that shows proper downloads. Takes a LOT of manual testing off my plate already so yet another tiny victory.

User avatar
RealLarry
Top Contributor
Posts: 776
Joined: Mon May 25, 2020 4:04 am
Location: San Junipero/DE/Earth
Has thanked: 93 times
Been thanked: 335 times

Re: Individually Bootable VHDs for Each Game

Unread post by RealLarry »

I created a compatibility chart. Feel free to edit or to adopt.

Contributor of tty2oled, author of tty2tft, tty2rpi and update_tty2xxx
Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Update to the releases page. Lots of new stuff, but some games are gone for now waiting for conversion to the new YAML format (which is almost final).

https://www.area536.com/posts/doscontainer-releases/

Thanks to all who contributed builds!!

User avatar
thera34
Posts: 107
Joined: Fri Sep 11, 2020 7:51 am
Has thanked: 84 times
Been thanked: 59 times

Re: Individually Bootable VHDs for Each Game

Unread post by thera34 »

RealLarry wrote: Wed Dec 27, 2023 12:32 pm

I created a compatibility chart. Feel free to edit or to adopt.

Aces of the Pacific totally works on ao486. It requires 610,000 bytes (595KB) of conventional memory AND 344,064 bytes (336 KB) of Expanded memory (EMS).

You need to fiddle a bit with memory managers (EMM386/QEMM in this case for EMS) to get it done. If in doubt, you can use Flynnsbit's Top 300 or similar VHDs to check how it is done.

For example, my EMM386 setup looks like this in config.sys:

Code: Select all

[EMM386]
DEVICE=C:\DOS71\HIMEM.SYS /Q /TESTMEM:OFF
DEVICEHIGH=C:\DOS71\EMM386.EXE AUTO 32768 RAM FRAME=D000 D=64 X=C000-CFFF I=B000-B7FF I=D000-EFFF
DEVICEHIGH=C:\DOS71\SETVER.EXE
DOS=HIGH,UMB,NOAUTO
DEVICEHIGH=C:\DRIVERS\XCDROM.SYS /D:IDE-CD
[COMMON]
FILES=50
BUFFERSHIGH=35,0
FCBSHIGH=16,0
STACKSHIGH=11,512
LASTDRIVEHIGH=Z

In my case, this gets me 608KB (623,072 bytes) of free conventional memory and 32,768 KB (33,554,432 bytes) of free Expanded Memory (EMS).

Attachments
20231228_081604-screen.png
20231228_081604-screen.png (62.67 KiB) Viewed 8145 times
User avatar
RealLarry
Top Contributor
Posts: 776
Joined: Mon May 25, 2020 4:04 am
Location: San Junipero/DE/Earth
Has thanked: 93 times
Been thanked: 335 times

Re: Individually Bootable VHDs for Each Game

Unread post by RealLarry »

thera34 wrote: Thu Dec 28, 2023 6:18 am
RealLarry wrote: Wed Dec 27, 2023 12:32 pm

I created a compatibility chart. Feel free to edit or to adopt.

Aces of the Pacific totally works on ao486. It requires 610,000 bytes (595KB) of conventional memory AND 344,064 bytes (336 KB) of Expanded memory (EMS).

You need to fiddle a bit with memory managers (EMM386/QEMM in this case for EMS) to get it done. If in doubt, you can use Flynnsbit's Top 300 or similar VHDs to check how it is done.

Thanks, got it to work by starting aces.com instead of ap.exe

Contributor of tty2oled, author of tty2tft, tty2rpi and update_tty2xxx
Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Had a brainfart from my younger days.. added Future Wars - Adventures in Time to the list. It's ready for testing on MiSTer, bit glitchy on PCEm right now.

User avatar
NML32
Posts: 296
Joined: Sun May 24, 2020 6:57 pm
Has thanked: 280 times
Been thanked: 50 times

Re: Individually Bootable VHDs for Each Game

Unread post by NML32 »

Bas wrote: Thu Dec 28, 2023 6:24 pm

Had a brainfart from my younger days.. added Future Wars - Adventures in Time to the list. It's ready for testing on MiSTer, bit glitchy on PCEm right now.

For me, Future Wars hangs at booting DOS.

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Two things:

  1. Future Wars was rebuilt with MS-DOS 6.22, maybe that helps.. can't test it myself right now.

  2. The release page on my website gets auto-updated every time a merge to 'main' and successful build takes place. That takes A LOT of dumb grunt work off my hands and I learned a few basics of Python doing it. Oh, and the table of games is now much more sensibly sorted.... aaaand Space Quest III is back on the list.

...so does that still count as two things?

User avatar
RealLarry
Top Contributor
Posts: 776
Joined: Mon May 25, 2020 4:04 am
Location: San Junipero/DE/Earth
Has thanked: 93 times
Been thanked: 335 times

Re: Individually Bootable VHDs for Each Game

Unread post by RealLarry »

I built a (cracked) version of Future Wars which doesn't need the reference card for the copy protection. Successfully tested in PCem only for now and ao486. L1 cache need to be disabled!

Contributor of tty2oled, author of tty2tft, tty2rpi and update_tty2xxx
Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Cool, thanks! I'm aiming to keep the originals in there as well so if you upload please make sure the names don't clash. There's also a German language version of this game that It'll be packaging based on your working config.

User avatar
NML32
Posts: 296
Joined: Sun May 24, 2020 6:57 pm
Has thanked: 280 times
Been thanked: 50 times

Re: Individually Bootable VHDs for Each Game

Unread post by NML32 »

Bas wrote: Fri Dec 29, 2023 3:37 pm

Cool, thanks! I'm aiming to keep the originals in there as well so if you upload please make sure the names don't clash. There's also a German language version of this game that It'll be packaging based on your working config.

I tried Future Wars - Adventures in Time built with your yaml with DOS401 and L1 cache disabled. The game locks up during boot. I changed your yaml to DOS622, and the game loaded and seems to play fine.

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Just updated the framework to fix a compatibility issue between MS-DOS 5.00 and others. Should anyone have configs that use MS-DOS 5.00, rebuilding your disk images should fix mouse support now. Jenkins is taking care of the online list as I'm typing this. That should update itself in about 10 minutes from now. Oh and I just pushed Space Quest IV floppy edition to the archive as well, those are ready for testing on MiSTer for anyone who feels so inclined.

I won't be in tomorrow, so I'd like to take this moment to wish all of you a wonderful 2024!

User avatar
NML32
Posts: 296
Joined: Sun May 24, 2020 6:57 pm
Has thanked: 280 times
Been thanked: 50 times

Re: Individually Bootable VHDs for Each Game

Unread post by NML32 »

Bas wrote: Sat Dec 30, 2023 6:21 pm

Oh and I just pushed Space Quest IV floppy edition to the archive as well, those are ready for testing on MiSTer for anyone who feels so inclined.

I won't be in tomorrow, so I'd like to take this moment to wish all of you a wonderful 2024!

Both versions of SQ IV option number 2 and 6 give an error "Unable to initialize your music hardware."

Update: I found some info about the SB error. Maybe a patch is needed. Space Quest 4 and 5 sound patch.
https://www.spacequest.net/sq4/patches/

Edit2: The patch didn't work. :(

Edit3: I found more info about SQ4 and Soundblaster issues.
For the games that did not have an updated driver released Sierra had a workaround for these initialization problems on faster PCs. Back when computers came with a Turbo switch that could slow a PC down, Sierra recommended that the user turn off the "Turbo" switch to start the game and allow the game to iniitalize its drivers.

The two SB options worked when I disabled L1 cache or reduced the CPU speed to 30 MHz.

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Published SQ4 builds should have the L1 cache disabled automatically now.

User avatar
HerrBerzerk
Posts: 240
Joined: Tue Feb 01, 2022 1:45 pm
Has thanked: 102 times
Been thanked: 31 times

Re: Individually Bootable VHDs for Each Game

Unread post by HerrBerzerk »

I tested all 3 Lemmings VHDs and they are not working correctly. Lemmings 1 has major graphical glitches and is not playable. Beside that it it missing adlib effects and music. More Lemmings and X-Mas is also missing adlib (or sound blaster?) effects and music. I think i remember that lemmings needed a lot of free mem for music. See https://www.youtube.com/watch?v=u0_Oe7ZYF4U

flynnsbit
Top Contributor
Posts: 552
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 183 times
Been thanked: 308 times
Contact:

Re: Individually Bootable VHDs for Each Game

Unread post by flynnsbit »

HerrBerzerk wrote: Tue Jan 02, 2024 9:02 am

I tested all 3 Lemmings VHDs and they are not working correctly. Lemmings 1 has major graphical glitches and is not playable. Beside that it it missing adlib effects and music. More Lemmings and X-Mas is also missing adlib (or sound blaster?) effects and music. I think i remember that lemmings needed a lot of free mem for music. See https://www.youtube.com/watch?v=u0_Oe7ZYF4U

I had to do this for lemmings for both adlib sound to work and to fix graphics issues. Basically disable l1 cache:

ADLIB
attrib -h -r russell.dat
del russell.dat
copy e:\games\lemmings\lemmings\russell\*.* e:\games\lemmings\lemmings
attrib -H +R russell.dat
sysctl sys L1-
cls
VGALEMMI /v
sysctl menu
goto quit

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

I took Lemmings off my list for now because of the fudging around with the RUSSELL.DAT file. I originally had a postprocessor function in the build script, but that meant running executable code on the host provided by the game config.. icky from a security standpoint. It's why I moved to YAML.

I'll reintroduce Lemmings later with the copy protection fudgery and cache flag stuffed into autoexec.bat. Right now there are bigger issues on my plate relating to MS-DOS 4.xx and earlier and disk geometry that I'm focusing on for the framework.

Bas
Top Contributor
Posts: 550
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 70 times
Been thanked: 256 times

Re: Individually Bootable VHDs for Each Game

Unread post by Bas »

Lemmings (the original) is back in my list of builds. The missing AdLib detection is due to the core's clock speed. Pushing it down to 56MHz. fixes the music for me on MiSTer. The latest build on my website does all of this automatically and it deals with the copy protection file. Get the pre-build VHD's from here and nowhere else:

https://www.area536.com/posts/doscontainer-releases/

User avatar
HerrBerzerk
Posts: 240
Joined: Tue Feb 01, 2022 1:45 pm
Has thanked: 102 times
Been thanked: 31 times

Re: Individually Bootable VHDs for Each Game

Unread post by HerrBerzerk »

Thank you, just testet. I have to select PC-AT 20MHz for the music to work and select "normal PC" for the graphics to work, but with these options it works like back in the days. Thank you :-)

Post Reply