Page 1 of 3

QDOS4Amiga on Amiga 600

Posted: Wed Dec 21, 2022 10:33 pm
by bwinkel67
Now that I've gotten my Amiga 600 fully configured with and SD hard disk and cleaned it up, I've been playing with it a bit more. Learning the headache that is WHDLoad (bad) but also some cool things like virtually being able to mount ADF files without using much memory (good if only most software was released sensibly, which it seems not to be). Yesterday I installed the QDOS4Amiga emulator to see how it ran. It has issues with color in mode 8 but in mode 4 it behaves pretty normally. Wasn't able to run any of Damon Chaplin's games (need to figure out how to run it in 128K classic mode I suppose). It can read and format QL disks, just like QEmulator, so that's nice. Of course I also ran my ZXSimulator on it as it's a good test for speed, etc.

I was surprised that a 68K 7.16 MHz machine emulated a 7.5 MHz 68K machine faster than the original. I get that one has a 16-bit data bus vs an 80-bit one and would expect it to run similar software faster, but not in emulating the machine. Is it just sending the mc instructions directly to the processor and then adding support for system calls? I think there's a ZX81 emulator on the Spectrum that may do something like that. I scanned the forum for previous posts on the QDOS4Amiga emulator but found nothing definitive, although there was some speculation of just-in-time emulation but not directly tied to the Amiga. I didn't go very deep into past posts though, so apologies if this has already been discussed. There's also the emulator's source, which I could look at.

Re: QDOS4Amiga on Amiga 600

Posted: Wed Dec 21, 2022 10:51 pm
by XorA
Does your Amiga also have fast ram?

That makes a huge difference over QLs contended ram!

Re: QDOS4Amiga on Amiga 600

Posted: Wed Dec 21, 2022 10:59 pm
by bwinkel67
No, it only has the standard 1MBs it comes with.

Re: QDOS4Amiga on Amiga 600

Posted: Wed Dec 21, 2022 11:12 pm
by XorA
That would explain your problems with WHDload too probably. It need extra RAM to create the VM that the games run in!

Re: QDOS4Amiga on Amiga 600

Posted: Thu Dec 22, 2022 3:39 pm
by Mark Swift
Hello,

The Amiga is able to emulate mode 4 in real time using the Blitter, but getting the Blitter to do Mode 8 was problematic. Simon Goodwin put some code together for QDOS Classic that emulates the screen using the CPU. But this relies on having an 68030 and fast RAM, so will not work on your A600.

Both QDOS4Amiga and its successor QDOS classic are not really emulators. They are a port of the JS ROM to the Amiga. So QL code runs as-is without modification which is why your 68K 7.16 MHz machine runs at full speed.

As a result of the code being a port rather than an emulation, there are a couple of things that the Amiga versions of QDOS has difficulty with.

The TAS (test and set) instruction which does not work on the Amiga.
Programs that enter supervisor mode, switch off interrupts and read QL HW registers directly.
Programs that make use of the QL interrupt register PC_INTR;

I expect that one of these might be preventing the games from running
There are work-arounds for the TAS issue, but not for the HW register issues.

Re: QDOS4Amiga on Amiga 600

Posted: Thu Dec 22, 2022 8:39 pm
by bwinkel67
Oh hey, you are the author, cool. What a great piece of software. Blown away as to how fast it ran.

Re: QDOS4Amiga on Amiga 600

Posted: Thu Dec 22, 2022 9:04 pm
by Derek_Stewart
Hi Mark,

If the A600 is fitted with a PI Storm, or does the emulator need a real CPU?

Re: QDOS4Amiga on Amiga 600

Posted: Thu Dec 22, 2022 10:20 pm
by Mark Swift
Hi Derek,

I'm guessing that the PI Storm must present itself as a real CPU to the Amiga.
If that's the case, the emulator should run OK.

Re: QDOS4Amiga on Amiga 600

Posted: Thu Dec 22, 2022 10:41 pm
by bwinkel67
The PiStorm is an interface board that connects a Raspberry Pi (Zero 2W) to the cpu socket of an Amiga. The Pi then runs a 68K emulator to simulate the CPU. It does more than that since it also provide extra memory, hard disk space, external HDMI graphics, and wifi.

Re: QDOS4Amiga on Amiga 600

Posted: Thu Dec 22, 2022 10:56 pm
by Derek_Stewart
bwinkel67 wrote: Thu Dec 22, 2022 10:41 pm The PiStorm is an interface board that connects a Raspberry Pi (Zero 2W) to the cpu socket of an Amiga. The Pi then runs a 68K emulator to simulate the CPU. It does more than that since it also provide extra memory, hard disk space, external HDMI graphics, and wifi.
Thank you for explaining this.

I did actually know all the details of PI Storm. But got the A600 and A1200 mixed up and even worse got the Vampire mixed up with the PI Storm.

Th e PI Storm can only facilitate a 68000 or 68010. So it would need a hardware emulator to plement a 68030.

I have 2 A600s waiting for a ReCap of the cheap components that Commodore fitted. When I find the time.