Page 1 of 2

How to Run Problematic Games

Posted: Thu Jan 12, 2023 7:50 am
by akeley

I suppose this topic might've been covered in the main megathread already, but I thought it could use a separate one for clarity and to consolidate the knowledge.

The majority of titles I've tried (not that many) runs fine when using the "standard" roms: micro8088 & pcxt31 (using a hdd image with MS-DOS 6.22 and fairly basic autoexec/config.sys = 550 Kb)
But I also have encountered these 3 main problems so far:

1) Tandy games - what I did first: built a Tandy rom with the python script from github, mounted it in "Tandy BIOS" and choose "Tandy 1000" as "Model" in the OSD Menu, also mounted the ide_xtl.rom in "EC00 BIOS".

After Ctrl+Alt+Del screen often shows gfx garbage, sometimes actual game screen, also takes a while to reboot (not sure if this is normal).

I got some titles to work, but others have problems.

Ghostbusters - hangs after logo intro
Pitfall II - starts with game level screen but can't do anything, beep on keypress.
F-16 Combat Pilot - crashes after choosing Demonstration in game menu
Also some basic games crash with "Resume without error in 1010" (eg French edu games from 1986, like Addition, Calculme)
Crossfire - running from floppy image - game starts, shows intro and sidebar with scores and seems to run, but main gameplay scr is missing

2) IBM PC Basic games - what I did first: built a IBM 5160 rom using the python script from github, mounted it in "PCXT BIOS" and choose "IBM PC XT" as "Model" in the OSD Menu, also mounted the ide_xtl.rom in "EC00 BIOS".

(At the moment, after boot I get the memory check (slow) and"FC000 ROM /ERROR" msg. Can resume with F1 and boot into DOS. But then keyboard is not very responsive, as if registering only every other keystroke. This used to work better before, so not sure what's wrong - some problem on my side possibly.)

There are a lot of basic games in the early years, perhaps two or three types? Like BASICA, GW BASIC. Not quite sure.
When using normal roms (8088/pcxt31) some will work, but others display "OK / Direct statement in file" error.
Eg B1 Nuclear Bomber, Baseball (from 1983).

3) games which need high amounts of conventional memory. At the moment my basic autoexec/config yields 550 Kb free memory, which I guess is enough for most games, but I'm sure there are some which need more ( I think I saw one so far which actually reported it). So this would be related to squeezing more memory via config optimisation, as per this thread.


Re: How to Run Problematic Games

Posted: Thu Jan 12, 2023 1:46 pm
by spark2k06
akeley wrote:

After Ctrl+Alt+Del screen often shows gfx garbage, sometimes actual game screen, also takes a while to reboot (not sure if this is normal).

This is normal, it is the content of the video memory.

The rest of the problems, see if it also happens on a real machine of the same characteristics, or failing that, you can use PCem or 86box... all exactly the same memory configuration and operating system, I recommend using the same HDD image. If it also happens on these, we could say that it is also a normal behaviour under those conditions, try to disable EMS if you have it active, improve the available base memory conditions, etc... most of the time all the problems are due to these same causes, and if not, to the version of the game obtained on the Internet, which sometimes are corrupted.

In case of discrepancies with respect to a real or emulated system under the same conditions, let me know.


Re: How to Run Problematic Games

Posted: Thu Jan 12, 2023 11:45 pm
by kitune-san
akeley wrote: Thu Jan 12, 2023 7:50 am

2) IBM PC Basic games - what I did first: built a IBM 5160 rom using the python script from github, mounted it in "PCXT BIOS" and choose "IBM PC XT" as "Model" in the OSD Menu, also mounted the ide_xtl.rom in "EC00 BIOS".

(At the moment, after boot I get the memory check (slow) and"FC000 ROM /ERROR" msg. Can resume with F1 and boot into DOS. But then keyboard is not very responsive, as if registering only every other keystroke. This used to work better before, so not sure what's wrong - some problem on my side possibly.)

If I remember correctly, the ROM error occurred when the bios writable option was enabled.

If this option is enabled, try disabling it.


Re: How to Run Problematic Games

Posted: Fri Jan 13, 2023 11:47 am
by Malor

Write-protecting the BIOS is probably a very good idea. Allowing ROMs to be cached, and having RAM at the same address as ROM, both caused painful, difficult-to-diagnose bugs well into the Pentium era. Or maybe the caching thing was related to I/O devices. Curse my aging brain. I'm not clear on what the problem actually was, anymore.


Re: How to Run Problematic Games

Posted: Sat Jan 14, 2023 8:22 am
by akeley

One if the main reasons for this post was me wanting to make sure my settings are ok first. Thanks for the writeable BIOS tip, Kitune-san, this indeed gets rid of the ROM error. But, the problem with erratic keyboard entry still persists when using pcxt rom (it works fine with other roms for this core, and other cores). Any ideas what might be causing this?

As for the other things:
-I did test the problem Tandy games on a Tandy 1000 PCem setup and they behave the same, so that's good to know. Perhaps it's down to game versions - although all my games come from TDC, and I think they have a rule (though not 100% sure) to include only working versions. Even so, in case of Ghostbusters, the floppy image actually works...
This needs a bit more investigating...

-BASIC games remain a big mystery. Despite the problems with keyboard I did manage to test some, and the GW basic games seem to work, but BASICA all end with the "Direct statement..." error. Some more examples (aside from B1 Nuclear Bomber, Baseball) are Big 8 Football, Black1, 15 Puzzle, Acey Deucey.

The same games tested on
-the core with Freedos based image: crash with "file not found...NCMain.exe" error
-PCem XT (I choose "[8088] IBM XT - CGA - IDE/ XTIDE" for it) all crash with some disk related errors: "Disk not ready / General failure reading drive / I/O error".
-PCem 486 / ao486 core / DOSbox - work ok

So it's all fairly confusing. I'd appreciate if somebody else could try some of these games to see if the results are consistent.


Re: How to Run Problematic Games

Posted: Sat Jan 14, 2023 11:12 am
by pgimeno
akeley wrote: Sat Jan 14, 2023 8:22 am

-BASIC games remain a big mystery. Despite the problems with keyboard I did manage to test some, and the GW basic games seem to work, but BASICA all end with the "Direct statement..." error. Some more examples (aside from B1 Nuclear Bomber, Baseball) are Big 8 Football, Black1, 15 Puzzle, Acey Deucey.

"Direct statement in file" means that the binary format is not recognized, therefore it's interpreted as ASCII, and since as ASCII it does not start with a line number, it takes that as if the file contains a "direct statement" (which is actually binary garbage) instead of a line to store into the program.

What is not clear to me is whether the problem is with protected binary files in particular or with binary files in general. I don't know if that's the case, but it's possible that BASICA predates the implementation of program protection. There's a utility you can use to convert the programs from binary to ASCII and see if they work with BASICA, but I'm not sure whether it handles protected programs:

https://github.com/danvk/gwbasic-decoder


Re: How to Run Problematic Games

Posted: Sat Jan 14, 2023 1:37 pm
by kitune-san
akeley wrote: Sat Jan 14, 2023 8:22 am

One if the main reasons for this post was me wanting to make sure my settings are ok first. Thanks for the writeable BIOS tip, Kitune-san, this indeed gets rid of the ROM error. But, the problem with erratic keyboard entry still persists when using pcxt rom (it works fine with other roms for this core, and other cores). Any ideas what might be causing this?

Hmm... I have no ideas. :cry:
The keyboard is working fine in my environment.

Would the keyboard still be erratic when using a freshly installed DOS disk or IBM-BASIC in pcxt_rom?


Re: How to Run Problematic Games

Posted: Wed Jan 18, 2023 3:54 am
by akeley
pgimeno wrote: Sat Jan 14, 2023 11:12 am

"Direct statement in file" means that the binary format is not recognized, therefore it's interpreted as ASCII, and since as ASCII it does not start with a line number, it takes that as if the file contains a "direct statement" (which is actually binary garbage) instead of a line to store into the program.

What is not clear to me is whether the problem is with protected binary files in particular or with binary files in general. I don't know if that's the case, but it's possible that BASICA predates the implementation of program protection.

Interesting, you might well be onto something here (thought it's well over my head). But the confusing thing is why do these games work in ao486 and 486 PCem? (from the same hdd image).

I still wish somebody else could try at least one of these games to confirm whether this is an universal problem.

kitune-san wrote: Sat Jan 14, 2023 1:37 pm

The keyboard is working fine in my environment.

Would the keyboard still be erratic when using a freshly installed DOS disk or IBM-BASIC in pcxt_rom?

Thanks for confirming that it actually works and the testing tip. I did try and:
-no problem when booting into and using IBM Basic
-no problem when booting into a game from floppy disk
-a freshly formated disk with MS-DOS 6.22 still has the typing problem

Not sure what to make out of this, but clearly it's something on my side.


Re: How to Run Problematic Games

Posted: Wed Jan 18, 2023 2:37 pm
by Malor

I just had a thought: BASICA and GW-BASIC are almost identical in terms of dialect and syntax, but do they have identical on-disk format? Maybe if it doesn't work on one, you could try loading it on the other?


Re: How to Run Problematic Games

Posted: Thu Jan 19, 2023 6:26 pm
by pgimeno
akeley wrote: Wed Jan 18, 2023 3:54 am

Interesting, you might well be onto something here (thought it's well over my head). But the confusing thing is why do these games work in ao486 and 486 PCem? (from the same hdd image).

With BASIC or BASICA? I don't think either of these works on ao486, because they depend on the BASIC ROM, which is only present in older IBM computers.


Re: How to Run Problematic Games

Posted: Fri Jan 20, 2023 4:40 am
by akeley

Don't know how, but I've just tried again and all the problem BASICA games I mentioned above work ok on ao486.

As for substitute solutions, such as converting or trying other basic, perhaps that would work but it'd be a lot of hassle to do on a mass scale, and in any case I feel like these games should work on the core directly, at least in theory.


Re: How to Run Problematic Games

Posted: Wed Jan 25, 2023 10:16 pm
by pgimeno

OK I've managed to take a look. There's something very wrong with BASICA. I suspect it's related to the version of DOS; the other alternative is a bug in the core. It seems to corrupt the disk buffers or something like that. If e.g. you run BASICA and then type SYSTEM to go back to DOS, the directories are all messed up. What caused the "Direct statement in file" error was probably that the buffers were already messed up when it attempted to load the BASIC program, reading garbage instead.

I've managed to make BASEBALL work by using GWBASIC instead of BASICA. I took it from \1982\0-L\CRAZYEIG\GWBASIC.EXE which is the 80608 bytes version (GWBASIC 3.23).

To solve the problem, the easiest way to go is probably to delete every BASICA.COM and copy GWBASIC.EXE as BASICA.COM in \DOS\.


Re: How to Run Problematic Games

Posted: Sun Feb 05, 2023 2:25 pm
by akeley

Thanks for looking into this. I will try to run these games on an earlier DOS version. It's good to know that the file swap solution works, but I won't use it en masse for this collection since I'd like to preserve the game archives as they were. I did write it in the project's description though.


Re: How to Run Problematic Games

Posted: Thu Feb 09, 2023 8:57 pm
by pgimeno

One question, do you have PCEm? If so, does any of the problematic BASIC programs run there with the same disk image? (I don't have it and can't try, sorry)


Re: How to Run Problematic Games

Posted: Fri Feb 10, 2023 2:32 pm
by held

Before submitting bug reports, this would be a good approach:

  1. Use Ms-dos 3.3 for 286 or lower , Ms-dos 5.0 for 386+
  2. Get software from a reputable source (Original disks, TDC, ExoDos)
  3. Make sure it works in Dosbox first (or a pc from the era)
  4. Setup the core according to developers manual/readme
  5. Make sure checksums match for essential files like bioses, floppy disks, cdroms etc.
  6. Make sure the sdcard is working properly.

8-)


Re: How to Run Problematic Games

Posted: Fri Feb 10, 2023 7:11 pm
by akeley
pgimeno wrote: Thu Feb 09, 2023 8:57 pm

One question, do you have PCEm? If so, does any of the problematic BASIC programs run there with the same disk image? (I don't have it and can't try, sorry)

Yes, like I mentioned earlier, on my IBM-XT PCem it also crashes, but it works on the 486 PCem setup (similar to situation on PCXT and ao486 cores here on MiSTer).

held wrote: Fri Feb 10, 2023 2:32 pm

Before submitting bug reports, this would be a good approach:

  1. Use Ms-dos 3.3 for 286 or lower , Ms-dos 5.0 for 386+2. Get software from a reputable source (Original disks, TDC, ExoDos)3. Make sure it works in Dosbox first (or a pc from the era)4. Setup the core according to developers manual/readme5. Make sure checksums match for essential files like bioses, floppy disks, cdroms etc.6. Make sure the sdcard is working properly.

8-)

Points 2-6 were covered, some of which has been already mentioned above. In any case, this thread is not exactly meant as a bug reporting one (though it might lead to it), but more of comparing notes on how to run games in general, since there are so many potentially problematic variables involved. The first basic sanity check is usually for somebody else to run the games on their setup anyway, see if they work. Doing so on real hardware would be an added bonus.

Point #1 is interesting but I haven't gotten to making an appropriate DOS image yet, and there's also the thing that the games work from my 6.22-based image on ao486 and >486 PCem builds (plus, of course, in DOSbox).


Re: How to Run Problematic Games

Posted: Fri Feb 10, 2023 8:39 pm
by pgimeno
akeley wrote: Fri Feb 10, 2023 7:11 pm

Yes, like I mentioned earlier, on my IBM-XT PCem it also crashes, but it works on the 486 PCem setup (similar to situation on PCXT and ao486 cores here on MiSTer).

Yeah, sorry, I totally forgot. I should have re-read the thread first. :oops:

What's puzzling is that you get disk errors. Did you manage to get past them? If not, maybe it's a question of disk geometry (cyls/heads/sectors).


Re: How to Run Problematic Games

Posted: Sun Feb 12, 2023 7:20 am
by akeley
pgimeno wrote: Fri Feb 10, 2023 8:39 pm

What's puzzling is that you get disk errors. Did you manage to get past them? If not, maybe it's a question of disk geometry (cyls/heads/sectors).

Nope, still present. It could be connected to geometry, but I think I've seen the same behaviour on 2 images which were not made by me (though still using my collection/files).

I also thought maybe my PCem XT instnce is flawed but there really doesn't seem much to tweak when making one - I just choose one of the IBMs as Machine, CGA as gfx and XTIDE as IDE.


Re: How to Run Problematic Games

Posted: Sat Feb 18, 2023 9:37 am
by akeley

I've been digging around this issue some more. This is a copy of my latest post from Atari Age on the subject:

Ok, so I've tried to run PCem XT instance with just floppy drives, no XTIDE. I got a PC-DOS 3.3 360kb disk form winworldpc.com and then transfered couple of the games onto blank 360kb images. The games now work, with DOS in a: and game image in b:. When I apply XTIDE back on the same setup , using the same floppies (and no hdd image attached), I get disk errors again - so similar to what The Usotsuki says is happening on real hardware.

I also read on XTIDE's site that it's possible to enable:

Full operating mode [default=No for XT builds, not available for AT builds]
"Full operating mode" reserves a bit of Conventional memory for XTIDE Universal BIOS variables. Disabling this will reduce the maximum number of supported IDE controllers to 2 and place the variables in a memory area reserved for IBM ROM Basic (30:0h). You should always enable this option unless:

-You don't need to use IBM ROM Basic or any BIOS or software (e.g. Turbo BASIC, BASICA) that requires that memory area.
-You have a Tandy 1000 with 640k or less RAM (see "kiB to steal from RAM" for a way around this problem).
-You really need the 1 kiB of Conventional memory that "Full operating mode" requires.

This sounds like confirmation of the problem being related to XTIDE itself

I've tried to replicate this on MiSTer, but it's not easy, seeing as two of the main bios .roms have XTIDE baked in, and the 5160 dedicated one doesn't play nice with floppies. I will ask around, maybe a solution is possible.

In any case, it's good to know that there is an answer to this problem, it's been bugging me for some time. Thanks for your replies here.

Side note: when I tried to run my hdd vhds in PCem XT using alternative IDE option - MFM (I did not try SCSI) - it doesn't recognise my images which are usually >250MB, DOS 6.22 based. Is it because of the big size / OS used, or is it some completely different format?

Like I said above, I'm struggling to replicate this on MiSTer. I tried to run a setup with pcxt.rom and ide_xtl.rom disabled. Without floppies this boots into Basic, as it should, but when I try to mount images, the core usually hangs into black, or throws error messages like "Bad or missing command interpreter" or "/ DEV/CON"

I've used a bunch of OS floppy images from Winworldpc.com, mostly PC-DOS v2-3.xx, and even the 360kb images (hard to find) are not working.

Regarding XTIDE itself, is there any way to "flash" it from the core, as per the instructions on website, or alter these settings in any other way?


Re: How to Run Problematic Games

Posted: Mon Feb 20, 2023 6:21 am
by spark2k06

Indeed, in the XTIDE BIOS, the Full Operation Mode option was disabled:

full_op.png
full_op.png (80.47 KiB) Viewed 15017 times

I have proceeded to enable it so you can try it... attached, you must select it for the EC00h ROM from the MiSTer OSD menu, and use it with ROMs that don't have it embedded... such as the original IBM 5160 ROM.

If it works fine and you want to use it in ROMs with this embedded in F000h, just overwrite this file at the beginning of those ROMs with a hex editor, such as HxD.

Good luck and let us know.


Re: How to Run Problematic Games

Posted: Tue Feb 21, 2023 6:17 am
by akeley

Thanks for looking into this. I've just tried on a few of these games with this new rom and they work ok.

Any chance to include this as a permanent change in the official BIOS roms/xtl, or would it interfere with some other stuff? Or perhaps you could add this one to the repo as an alternative xtl rom and mention it in the wiki? I guess most users won't see this thread and there are a lot of BASICA games (nearly 300) plus I think it might be also beneficial for some Tandy 1000 ones.


Re: How to Run Problematic Games

Posted: Tue Feb 21, 2023 6:56 am
by spark2k06
akeley wrote: Tue Feb 21, 2023 6:17 am

Thanks for looking into this. I've just tried on a few of these games with this new rom and they work ok.

Any chance to include this as a permanent change in the official BIOS roms/xtl, or would it interfere with some other stuff? Or perhaps you could add this one to the repo as an alternative xtl rom and mention it in the wiki? I guess most users won't see this thread and there are a lot of BASICA games (nearly 300) plus I think it might be also beneficial for some Tandy 1000 ones.

Great. Thanks to you for investigating the source of the problem. Yes, I will make an alternative ROM folder with this option and mention it in the README. Let's see if I can find some time for it this weekend.

Edit: Well, actually I think it makes more sense to replace the ROMs... I doubt we lose compatibility elsewhere. Anything that adds up, better as something "official" than as an alternative.


Re: How to Run Problematic Games

Posted: Tue Feb 21, 2023 3:58 pm
by breiztiger

Re: How to Run Problematic Games

Posted: Wed Feb 22, 2023 1:53 pm
by spark2k06

ROM SW folder updated, whoever are interested in this enhancement by means of embedded ROMs, you will have to rebuild them from the corresponding scripts located in the same folder:

viewtopic.php?p=69262#p69262

breiztiger wrote: Tue Feb 21, 2023 3:58 pm

625 is out for xtide

https://www.xtideuniversalbios.org/chan ... ersalbios/

Thanks for the information, but it will be up to each one to use one version or another, in the same way, you can generate the embedded ROMs with these versions from the same scripts.


Re: How to Run Problematic Games

Posted: Wed Feb 22, 2023 3:28 pm
by jca

I am not sure I understand what has to be done:
There are only 3 scripts for IBM5160, JukoST and Tandy.
Out of these 3 scripts only JukoST uses XTIDE.
For IBM5160 and Tandy one has to use the ide_xtl.rom by loading it as a BIOS extension at E000.
For Micro8088 and PCXT31 which use XTIDE there are no scripts, only the ROMs.
It looks like one has to use a Hex Editor to patch the ROM with the ide_xtl.rom at 0x0000???????


Re: How to Run Problematic Games

Posted: Wed Feb 22, 2023 3:33 pm
by spark2k06
jca wrote: Wed Feb 22, 2023 3:28 pm

I am not sure I understand what has to be done:
There are only 3 scripts for IBM5160, JukoST and Tandy.
Out of these 3 scripts only JukoST uses XTIDE.
For IBM5160 and Tandy one has to use the ide_xtl.rom by loading it as a BIOS extension at E000.
For Micro8088 and PCXT31 which use XTIDE there are no scripts, only the ROMs.
It looks like one has to use a Hex Editor to patch the ROM with the ide_xtl.rom at 0x0000???????

You are right, PCXT31 and micro8088 are not updated via script. I will update them later with this version of XTIDE embedded.


Re: How to Run Problematic Games

Posted: Wed Feb 22, 2023 4:23 pm
by spark2k06
jca wrote: Wed Feb 22, 2023 3:28 pm

I am not sure I understand what has to be done:
There are only 3 scripts for IBM5160, JukoST and Tandy.
Out of these 3 scripts only JukoST uses XTIDE.
For IBM5160 and Tandy one has to use the ide_xtl.rom by loading it as a BIOS extension at E000.
For Micro8088 and PCXT31 which use XTIDE there are no scripts, only the ROMs.
It looks like one has to use a Hex Editor to patch the ROM with the ide_xtl.rom at 0x0000???????

viewtopic.php?p=69269#p69269


Re: How to Run Problematic Games

Posted: Mon Feb 27, 2023 8:09 am
by akeley

Hi, spark2k06, I think there is a problem when using the new ide_xtl.rom with Tandy - it makes Sierra games hang. I didn't have time to test this extensively, but it seems to be related only to Sierra, as a handful of random other games I've tried run ok. When I use the old ide_xtl rom they work fine (though the BASICA games understandably don't).

I also ran brief tests on other configs - PCXT with the new micro8088/pcxt31 and pcxt(5160 from script)+ide_xtl roms, and these all work ok both with Sierra, BASICA, and some other random games (but the my sample size was really small regarding the latter).


Re: How to Run Problematic Games

Posted: Tue Feb 28, 2023 5:21 am
by spark2k06
akeley wrote: Mon Feb 27, 2023 8:09 am

Hi, spark2k06, I think there is a problem when using the new ide_xtl.rom with Tandy - it makes Sierra games hang. I didn't have time to test this extensively, but it seems to be related only to Sierra, as a handful of random other games I've tried run ok. When I use the old ide_xtl rom they work fine (though the BASICA games understandably don't).

I also ran brief tests on other configs - PCXT with the new micro8088/pcxt31 and pcxt(5160 from script)+ide_xtl roms, and these all work ok both with Sierra, BASICA, and some other random games (but the my sample size was really small regarding the latter).

You would have to investigate what the problem is and in case you don't find it, offer to both XTIDE BIOS to cover all scenarios.


Re: How to Run Problematic Games

Posted: Tue Feb 28, 2023 11:54 am
by akeley

Ok, it's just a heads up. I did a quick search for Xtide+Sierra but nothing worthwile came up, so I don't really have any ideas atm. Will keep my ears open.

Perhaps it's worth considering making a note about it in the wiki though, and maybe keeping two different xtide roms in the github repo.