Loci - my Oric storage emulation project
- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
Bisect C mia_action PIO program timing revert.
- Attachments
-
- loci-firmware_bisect_c_pioact.uf2.zip
- (139.26 KiB) Downloaded 59 times
Re: Loci - my Oric storage emulation project
First boot gots all corrupted
Second boot displayed some 44444 with the usual fat font...
...and after rebooting I got the same one but with a thin font?
- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
Thanks. Just to be sure we're testing one thing at the time, could you revert the timing tests A and B? Looks like they are still present.
Re: Loci - my Oric storage emulation project
I've set the values back to what I had on 0.2.5, not sure if that's the default, is there a "reset to default" command?Sodiumlightbaby wrote: ↑Sat Apr 12, 2025 7:27 pm Thanks. Just to be sure we're testing one thing at the time, could you revert the timing tests A and B? Looks like they are still present.
- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
They work with 0.2.5 and that's the important part.
- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
Bisect D, reduced action loop (ACIA regs disabled).
Not confident this is enought to fix the issue, but I'm interested in if there is different behaviour compared to 0.3.1
Not confident this is enought to fix the issue, but I'm interested in if there is different behaviour compared to 0.3.1
- Attachments
-
- loci-firmware_bisect_d_noaciaregs.uf2.zip
- (139.06 KiB) Downloaded 95 times
Re: Loci - my Oric storage emulation project
Can't say there's much difference.
When the Oric is cold, it's fully glitching: When the machine is warm the boot menu works as expecting... for about 2 seconds before freezing
When the Oric is cold, it's fully glitching: When the machine is warm the boot menu works as expecting... for about 2 seconds before freezing
- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
This is very interesting. The last image you have actually shows the monitor system that was added in 0.3.1 kicking in, which requires a break to be sent to the uart, indicating perhaps a spurious writhe 0x03A1.
With the Bisect D firmware, could you try an long-press on the action button to activate the diag ROM? It should be fixed in that fw, and I'm curious if that is also unstable - in only uses the ROM emulation and none of the page 3 interface emulation.
With the Bisect D firmware, could you try an long-press on the action button to activate the diag ROM? It should be fixed in that fw, and I'm curious if that is also unstable - in only uses the ROM emulation and none of the page 3 interface emulation.
Re: Loci - my Oric storage emulation project
Long press seems to work nicely:
At this point if I short press the button, I see
And that's it, the screen stays on the Oric Diag ROM screen.
After that I have to power off, power on, and after the short press I'm back to the boot screen that spins for a couple seconds and stops on
At this point if I short press the button, I see
Code: Select all
IRQ Trap on
]?Unable to open file (4)
Booting ROM from firmware
After that I have to power off, power on, and after the short press I'm back to the boot screen that spins for a couple seconds and stops on
- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
That is very very helpful. So the issues are connected with IO page accesses creating problems for the ROM emulation. ROM emulation alone seems to work fine.
Re: Loci - my Oric storage emulation project
@Dbug: What Oric are you using in LOCi tests (Oric-1, Atmos)? What's the ROM inside? How long is the ribbon cable (>15 cm)?
Re: Loci - my Oric storage emulation project
Atmos, the cable is about 10cm, and it's an actual 1.1 ROM, not an eprom.
Re: Loci - my Oric storage emulation project
Looks good to me and it should work! 

- Sodiumlightbaby
- Squad Leader
- Posts: 755
- Joined: Thu Feb 22, 2024 11:38 am
Re: Loci - my Oric storage emulation project
Bisect E, revert unguarding of read DMA trigger in the action loop. This bisect is based on the observations so far that the machine handles ROM emulation ok when no IO operations are happening.
If this has an effect, the loading and execution of the LOCI ROM should be much better but likely some hangs and issues will still trigger.
If this has an effect, the loading and execution of the LOCI ROM should be much better but likely some hangs and issues will still trigger.
- Attachments
-
- loci-firmware_bisect_e_actionreadguard.uf2.zip
- (139.28 KiB) Downloaded 97 times
Re: Loci - my Oric storage emulation project
On the very first boot, I got some 22222
Not sure if relevant, but during one of the cold boots the device was entirely black: No red LED, and the screen was completely blank, I had to power cycle the machine to get it back on.
Also, even when the Oric is frozen, doing a long press will properly show the "Booting diag ROM" message on the screen, except nothing happens on the Oric side.
EDIT: After letting the machine plugged for almost an hour more, the next time the spinner was spinning for almost 5 seconds before freezing.
On the second boot, it spinned a bit longer than before, but ended up frozen with a "a" on the left side of the screen.Not sure if relevant, but during one of the cold boots the device was entirely black: No red LED, and the screen was completely blank, I had to power cycle the machine to get it back on.
Also, even when the Oric is frozen, doing a long press will properly show the "Booting diag ROM" message on the screen, except nothing happens on the Oric side.
EDIT: After letting the machine plugged for almost an hour more, the next time the spinner was spinning for almost 5 seconds before freezing.