XRoar 1.8 released
Posted: Thu Jan 30, 2025 8:34 pm
https://www.6809.org.uk/xroar/
One visible change is you can turn on automatic config saving. Changed config will be saved on exit to a consistent location (consistent per-platform that is; locations are listed in the manual). Important to note here that if Windows users have an xroar.conf in the directory they're running from that will always take precedence, so check that out if you're confused that your changes don't stick.
The negative here is that there's still quite a lot you can't configure in the UI, so you'll doubtless still be editing xroar.conf yourself (or doing it all on the command line).
Personally I can't say I'm a fan - I like keeping on top of the config file myself - but it's been asked for...
Besides that, the HD image (SD image for MOOH) can be managed from the drive control dialog. So you can run NitrOS9 or FUZIX without resorting to the command line finally.
The first MC-10 cartridge has been implemented: the MCX128. You'll need its BASIC ROM, and to name it "mcx128.rom". One thing to be careful of there is you should turn OFF any tape options (fast loading, CAS padding) - the ROM hooks will be in the wrong place. Dynamically switching between sets of ROM hooks without killing performance is on the list of things to think about.
If you use the Becker port, you might find it's not so sluggish any more.
And kinda useful: a generic-ish "trap" interface from the command line. So you can, for example:
Trap conditions can be PC matches, reads or writes to specific memory ranges, or the tape motor turning off. Trap actions can be turning trace on and off (as seen), saving a snapshot (remember if you name the snapshot with .ram you get just the ram dump - quite useful) or quitting the emulator (a specified number of seconds after the trap fires).
The old -timeout, -timeout-motoroff and -snap-motoroff options are now all implemented in terms of these traps.
One visible change is you can turn on automatic config saving. Changed config will be saved on exit to a consistent location (consistent per-platform that is; locations are listed in the manual). Important to note here that if Windows users have an xroar.conf in the directory they're running from that will always take precedence, so check that out if you're confused that your changes don't stick.
The negative here is that there's still quite a lot you can't configure in the UI, so you'll doubtless still be editing xroar.conf yourself (or doing it all on the command line).
Personally I can't say I'm a fan - I like keeping on top of the config file myself - but it's been asked for...
Besides that, the HD image (SD image for MOOH) can be managed from the drive control dialog. So you can run NitrOS9 or FUZIX without resorting to the command line finally.
The first MC-10 cartridge has been implemented: the MCX128. You'll need its BASIC ROM, and to name it "mcx128.rom". One thing to be careful of there is you should turn OFF any tape options (fast loading, CAS padding) - the ROM hooks will be in the wrong place. Dynamically switching between sets of ROM hooks without killing performance is on the list of things to think about.
If you use the Becker port, you might find it's not so sluggish any more.
And kinda useful: a generic-ish "trap" interface from the command line. So you can, for example:
Code: Select all
$ xroar -q -nodos -trap pc=0x010c -trap-trace -trap pc=0xbb0c -trap-no-trace
9d3d| b6ff03 LDA $ff03 cc=99 a=b5 b=1e dp=00 x=444b y=b39b u=8b8d s=7f29
9d40| 2b01 BMI $9d43 cc=99 a=b5 b=1e dp=00 x=444b y=b39b u=8b8d s=7f29
9d43| b6ff02 LDA $ff02 cc=95 a=00 b=1e dp=00 x=444b y=b39b u=8b8d s=7f29
9d46| be0112 LDX $0112 cc=95 a=00 b=1e dp=00 x=0000 y=b39b u=8b8d s=7f29
9d49| 3001 LEAX 1,X cc=91 a=00 b=1e dp=00 x=0001 y=b39b u=8b8d s=7f29
9d4b| bf0112 STX $0112 cc=91 a=00 b=1e dp=00 x=0001 y=b39b u=8b8d s=7f29
9d4e| 7eafd9 JMP $afd9 cc=91 a=00 b=1e dp=00 x=0001 y=b39b u=8b8d s=7f29
afd9| 4f CLRA cc=94 a=00 b=1e dp=00 x=0001 y=b39b u=8b8d s=7f29
afda| 1f8b TFR A,DP cc=94 a=00 b=1e dp=00 x=0001 y=b39b u=8b8d s=7f29
afdc| dce3 LDD <$e3 cc=94 a=00 b=00 dp=00 x=0001 y=b39b u=8b8d s=7f29
afde| 10270b20 LBEQ $bb02 cc=94 a=00 b=00 dp=00 x=0001 y=b39b u=8b8d s=7f29
bb02| be008d LDX $008d cc=94 a=00 b=00 dp=00 x=0000 y=b39b u=8b8d s=7f29
bb05| 2705 BEQ $bb0c cc=94 a=00 b=00 dp=00 x=0000 y=b39b u=8b8d s=7f29
The old -timeout, -timeout-motoroff and -snap-motoroff options are now all implemented in terms of these traps.