Hallo MichaĆ, > What I would normally do would be to step through this code with a > debugger, ... In contrary to my 6502 debugger my PC debugger has no means to set an address where the card should halt the PC so I can single-step further by hand. If you have a software debugger in mind, which one? > I was thinking more of copying it to the RAM on the original > machine and using plain old DEBUG from MS-DOS. To be honest, my first impression is that that won't work but it is quite possible that I'm overlooking something. Hallo Mia, > The PC20-III is probably similar enough to any standard PC > compatible that you can run it's BIOS ROMs in some emulator, Unfortunately not. There where the PC has the control register of the 8255 at address 063h, the PC1 and PC10/20-III have another R/W register. And there are some registers in the 23xh range of which the one at 230h plays an important roll. I tried to emulate various things and got a BIOS that ran fine in the PCem emulator. After removing the simulations the BIOS didn't even pop up the very first start-up message :( > I would however suggest trying to patch the 33 F6 / 31 F6, 2B CF > / 29 F9 things to match the original rom. That is a very good idea! I altered my original compare program so it replaces the NASM codes by the original ones. And in the end I ended up with two exact the same ROMs (which on after thought is logical). Unfortunately this trick cannot be used the moment I change the sources for my own need because I have no original file to compare with. And just hunting for certain byte combinations won't work because I don't know if the found combination is a complete instruction or the last byte of one instruction and the first byte of the next one. One idea I have is to use the generated LST file as base; the compiled lines start with an address and then the generated bytes. Worth a try IMHO. What I can do with the program as-is is to exclude the various comparisions one-by-one. IMHO at one moment there is only one drive available in VGA and, in theory, I should have found the combination that creates the problem. Then I should find out if it is a bug in my program or did I find out that, after almost 40 years, I found two sets of code that should work the same, but just don't? I'm afraid it is the first reason :) > Btw I'd suggest trying to poke around in RAM to see if you can make > it believe that it indeed has two drives and if both drives work. Rereading my original message I see I didn't mention it: it is just setting bit 6 of the Equipment byte at 0040:0000 just before calling interrupt 19h. > It would be a nice hack if someone would patch the bios of a 286 or > higher to work with 4 drives. Sergey Malinov already did that. In fact he made it possible to attach eigth floppies but under certain conditions. His site: www.malinov.com . Unfortunately I cannot see where this floppy project is. If interested, just ask me, it is just one ZIP file. I have his Xi8088 procssor board and want to use it for such a project. It enables me to exchange various floppy formats with just one machine. His 8-floppy project can work stand alone in the form of a drop-in ROM but has one disadvantage: in that way it cannot work in combination with a XT-IDE card (see his equivalent: XT-CF-Lite) for the moment. By integrating his code (which is based on the BIOS of the Xi8088) into the one of the Xi8088 I hope to avoid that problem. If not, I just boot from a Gotek. And thank you both for answering! It popped up some good ideas again :) -- Kind regards / Met vriendelijke groet, Ruud Baltissen www.Baltissen.orgReceived on 2020-05-29 21:36:25
Archive generated by hypermail 2.3.0.