BatmanQL - Joan Gayon (2025)
Re: BatmanQL - Joan Gayon (2025)
The PEEKs and POKEs in the boot program are a bit of a hinderance.
The program is CALLed, not an executable.
When you first try it with unmodified boot with QPC2 set to 512x256 in QL colour mode, it stops with "At line 50:1 insufficient memory." It has tried to read the top of RAM from system variable $28020 (SV_RAMT in QDOS terminology). I guess since QPC2 doesn't allow less than 2MB RAM and probably the game is only coded for up to 640KB RAM.
Changing line 40 from f=PEEK_L(163872)-262144 for the RESPR to some fixed value within 640KB helps it to start, but then the keys are unresponsive, everything freezes at the startup "controls" screen. Even CTRL SHIFT ALT TAB won't reset the emulator at that point.
The LBYTES of the main code to a fixed address followed by a call to that address implies it might be position dependent code (don't know for sure), or possibly overwriting something in SMSQ/E (not sure where SMSQ/E is in memory by that point). Certainly, experimenting with where the code is loaded to seemed to produce different lockups.
That's as far as I got on QPC2.
The program is CALLed, not an executable.
When you first try it with unmodified boot with QPC2 set to 512x256 in QL colour mode, it stops with "At line 50:1 insufficient memory." It has tried to read the top of RAM from system variable $28020 (SV_RAMT in QDOS terminology). I guess since QPC2 doesn't allow less than 2MB RAM and probably the game is only coded for up to 640KB RAM.
Changing line 40 from f=PEEK_L(163872)-262144 for the RESPR to some fixed value within 640KB helps it to start, but then the keys are unresponsive, everything freezes at the startup "controls" screen. Even CTRL SHIFT ALT TAB won't reset the emulator at that point.
The LBYTES of the main code to a fixed address followed by a call to that address implies it might be position dependent code (don't know for sure), or possibly overwriting something in SMSQ/E (not sure where SMSQ/E is in memory by that point). Certainly, experimenting with where the code is loaded to seemed to produce different lockups.
That's as far as I got on QPC2.
--
All things QL - https://dilwyn.theqlforum.com
All things QL - https://dilwyn.theqlforum.com
-
- Bent Pin Expansion Port
- Posts: 91
- Joined: Tue Jan 26, 2021 11:04 am
Re: BatmanQL - Joan Gayon (2025)
It's not intended to run on SMSQ/E, just QDOS. Original target was running on stock 128k QL, but memory requirements for code+graphics turned that impossible. It does not even fit in a microdrive image....
Last edited by napsternds on Sat May 10, 2025 11:55 am, edited 1 time in total.
Re: BatmanQL - Joan Gayon (2025)
I appreciate that. I only tried to reply since Ralf asked about it on QPC. It seems to run very well on a suitable QDOS system.napsternds wrote: Sat May 10, 2025 11:37 am It's not intended to run on SMSQ/E, just QDOS. Original target was running on sotck 128k QL, but memory requirements for code+graphics turned that impossible. It does not even fit in a microdrive image....
--
All things QL - https://dilwyn.theqlforum.com
All things QL - https://dilwyn.theqlforum.com
Re: BatmanQL - Joan Gayon (2025)
It looks spectacular!
For some reason, in QEmulator (registered, Windows 11) CTRL is not working, and I cannot make it jump
Or you need to take the boots in order to jump? (I suck at arcade games!)
The cursor keys are working.
I will try the game later on real QL
For some reason, in QEmulator (registered, Windows 11) CTRL is not working, and I cannot make it jump

Or you need to take the boots in order to jump? (I suck at arcade games!)
The cursor keys are working.
I will try the game later on real QL
Re: BatmanQL - Joan Gayon (2025)
Just for completeness (I understand the game is for the BBQL):
It seems to talk to the IPC directly instead of using MT.IPCOM calls (or, tries to talk to the IPC with interrupts off). Thus, the game will likely not run on anything that doesn't have (or fully emulates) an IPC.
It runs well on the ZXNEXT QL when the memory amount to grab is changed to "f = FREE_MEM-16384" instead of the PEEKs.
It seems to run on the Q68 in DISP_MODE 0, but fails to respond to the keyboard (the Q68 doesn't emulate the IPC on register level, MT.IPCOM only). So, may also not work on QIMSI Gold (that I still have to check, the thing is not near my desk atm, but it is unlikely)
But that game is really a spectacular achievement and the best newcomer since years! Congrats for that good work!
It seems to talk to the IPC directly instead of using MT.IPCOM calls (or, tries to talk to the IPC with interrupts off). Thus, the game will likely not run on anything that doesn't have (or fully emulates) an IPC.
It runs well on the ZXNEXT QL when the memory amount to grab is changed to "f = FREE_MEM-16384" instead of the PEEKs.
It seems to run on the Q68 in DISP_MODE 0, but fails to respond to the keyboard (the Q68 doesn't emulate the IPC on register level, MT.IPCOM only). So, may also not work on QIMSI Gold (that I still have to check, the thing is not near my desk atm, but it is unlikely)
But that game is really a spectacular achievement and the best newcomer since years! Congrats for that good work!
ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
Re: BatmanQL - Joan Gayon (2025)
It won't run on QIMSI Gold as it uses Q68 SMSQ/E, too. I did not want to bring further diversity into the operating system variants, so the 68008 converts the IPC data into PS/2 before sending them to the QIMSI Gold FPGA, which then emulates the Q68 registers. SMSQ/E does not even know that it doesn't run on a Q68.tofro wrote: Sat May 10, 2025 12:43 pm It seems to run on the Q68 in DISP_MODE 0, but fails to respond to the keyboard (the Q68 doesn't emulate the IPC on register level, MT.IPCOM only). So, may also not work on QIMSI Gold (that I still have to check, the thing is not near my desk atm, but it is unlikely)
I might also implement the IPC in FPGA someday, but there are QL projects with much higher priority.
Re: BatmanQL - Joan Gayon (2025)
Absolutely! I just have no idea why someone writes extra code to talk directly to the IPC for keyboard. Seems pointless - the MT.IPCOM calls for the keyboard work even if the OS is otherwise completely circumvented, or not even fully booted. Also with interrupts off.
Re: BatmanQL - Joan Gayon (2025)
I just downloaded it too, and it looks amazing on my old QL, after making a floppy from the img file.
I remember it well from back in the Spectrum days, though I probably never completed it, as my game playing skills were always lamentable.
And Andrew, I think you're right, you need the bat boots to jump, and the bat bag to pick up stuff.
This is going to give us a whole lot of fun
I remember it well from back in the Spectrum days, though I probably never completed it, as my game playing skills were always lamentable.
And Andrew, I think you're right, you need the bat boots to jump, and the bat bag to pick up stuff.
This is going to give us a whole lot of fun

Try out Finding Evan - I need some feedback 

-
- Font of All Knowledge
- Posts: 4693
- Joined: Mon Dec 20, 2010 11:40 am
- Location: Sunny Runcorn, Cheshire, UK
-
- ROM Dongle
- Posts: 14
- Joined: Sat Apr 27, 2019 9:10 am
Re: BatmanQL - Joan Gayon (2025)
.
I've played all the Batman games, and this one is tremendous, one of the best. A marvelous game for our beloved QL, where the capabilities of this machine are truly evident.
Bravo to Joan Gayon, impressive work.
Correct, you have to take the boots to jump,
I've played all the Batman games, and this one is tremendous, one of the best. A marvelous game for our beloved QL, where the capabilities of this machine are truly evident.
Bravo to Joan Gayon, impressive work.
Correct, you have to take the boots to jump,