You will not be able to post if you are still using Microsoft email addresses such as Hotmail etc
See here for more information viewtopic.php?f=20&t=7296
See here for more information viewtopic.php?f=20&t=7296
DO NOT USE DEVICES WHERE THE IP CHANGES CONSTANTLY!
At this time it is unfortunately not possible to white list users when your IP changes constantly.
You may inadvertently get banned because a previous attack may have used the IP you are now on.
So I suggest people only use fixed IP address devices until I can think of a solution for this problem!
At this time it is unfortunately not possible to white list users when your IP changes constantly.
You may inadvertently get banned because a previous attack may have used the IP you are now on.
So I suggest people only use fixed IP address devices until I can think of a solution for this problem!
DFBX1 Issues
- stephen_usher
- Site sponsor

- Posts: 6999
- Joined: Mon Nov 13, 2017 7:19 pm
- Location: Oxford, UK.
- Contact:
Re: DFBX1 Issues
Thanks.
I'll probably have a look at this next week. At the moment I'm still trying to get over viral bronchitis I picked up from the retro computer festival in Cambridge nearly two weeks ago. Almost zero energy at the moment.
I'll probably have a look at this next week. At the moment I'm still trying to get over viral bronchitis I picked up from the retro computer festival in Cambridge nearly two weeks ago. Almost zero energy at the moment.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
Re: DFBX1 Issues
Yes, you will find the footprint among thess collections : https://github.com/sporniket/kicad-footprints-handmade/exxos wrote: Fri Nov 28, 2025 2:58 pmNope, but I believe @sporniket STE recreation is public somewhere with all the lib for KiCAD.stephen_usher wrote: Fri Nov 28, 2025 2:46 pm Yeah. I don't s'pose you have a KiCAD footprint for the cartridge port edge connector and socket do you?![]()
More precisely : https://github.com/sporniket/kicad-foot ... .kicad_mod
- stephen_usher
- Site sponsor

- Posts: 6999
- Joined: Mon Nov 13, 2017 7:19 pm
- Location: Oxford, UK.
- Contact:
Re: DFBX1 Issues
Thanks....
One fly in the ointment though, I thought that I had a spare cartridge socket hanging around, but I don't, so not much point starting the project without one of those unobtainium items.
One fly in the ointment though, I thought that I had a spare cartridge socket hanging around, but I don't, so not much point starting the project without one of those unobtainium items.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
Re: DFBX1 Issues
I dug a bit deeper into the non-booting Falcon with the NetUSBee and the DFBx1 running at 50 MHz with Flash enabled.
First, I checked the Verilog code used in the CPLD to get a better understanding of how the accelerator works. It seems there is a delay pipe for the address strobe used for DSACK generation.
https://github.com/dh219/DFB/blob/5db49 ... 1r5.v#L218
I don't think the code for the Exxos board is freely available, so I have to take this one as a reference. There, the delay is set to 80ns at 50 MHz (i.e. four clock cycles - for 40 MHz this makes 100 ns delay, obviously, so no issue there with booting..).
The Flash memory is said to have an access time of 70ns. However, this is taking just a load of a single TTL gate or 30 pF capacitance. I wonder whether the additional NetUSBee in the ROM-port just increases the load / the capacitance on the data bus such that 80ns access time become too aggressive. I mean, it seems to work and crash only after the boot process made some progress already. So it might just be the edge between working/non-working in that case.
If that would be true, potentially a single change could resolve this issue:
wire [1:0] ROM_DTACK = { rom_access | ( lowspeed ? AS_DELAY[4] : AS_DELAY[1] ), 1'b1 };
becomes
wire [1:0] ROM_DTACK = { rom_access | ( lowspeed ? AS_DELAY[5] : AS_DELAY[1] ), 1'b1 };
I'd love to test this assumption. I have all the tools (ISE installed, Xilinx programmer), but no Firmware code
Is there a chance to try this jointly?
First, I checked the Verilog code used in the CPLD to get a better understanding of how the accelerator works. It seems there is a delay pipe for the address strobe used for DSACK generation.
https://github.com/dh219/DFB/blob/5db49 ... 1r5.v#L218
I don't think the code for the Exxos board is freely available, so I have to take this one as a reference. There, the delay is set to 80ns at 50 MHz (i.e. four clock cycles - for 40 MHz this makes 100 ns delay, obviously, so no issue there with booting..).
The Flash memory is said to have an access time of 70ns. However, this is taking just a load of a single TTL gate or 30 pF capacitance. I wonder whether the additional NetUSBee in the ROM-port just increases the load / the capacitance on the data bus such that 80ns access time become too aggressive. I mean, it seems to work and crash only after the boot process made some progress already. So it might just be the edge between working/non-working in that case.
If that would be true, potentially a single change could resolve this issue:
wire [1:0] ROM_DTACK = { rom_access | ( lowspeed ? AS_DELAY[4] : AS_DELAY[1] ), 1'b1 };
becomes
wire [1:0] ROM_DTACK = { rom_access | ( lowspeed ? AS_DELAY[5] : AS_DELAY[1] ), 1'b1 };
I'd love to test this assumption. I have all the tools (ISE installed, Xilinx programmer), but no Firmware code
Re: DFBX1 Issues
Have you tested TTram with flash disabled?
If the bus is unstable then I'd assume TTram would also fail not just flash..
When you say doesn't boot, what do you mean exactly? White screen?
IIRC The booster runs at 8MHz during bootup. I forget what point fast mode is enabled. I think it was just before it gets to desktop.
EDIT:
A quick look at the DFB1 code its got a fixed delay.. I'm not sure if things changed in the DFB1X branch.
If the bus is unstable then I'd assume TTram would also fail not just flash..
When you say doesn't boot, what do you mean exactly? White screen?
IIRC The booster runs at 8MHz during bootup. I forget what point fast mode is enabled. I think it was just before it gets to desktop.
EDIT:
A quick look at the DFB1 code its got a fixed delay.. I'm not sure if things changed in the DFB1X branch.
Re: DFBX1 Issues
TT RAM always works for me (40/50 MHz, Flash on/off).
From the code it looks like it takes about 2 seconds before the high-speed mode can be used (500 kHz clock, 2^20 ticks counted):
https://github.com/dh219/DFB/blob/83857 ... b1r5.v#L72
I have the white screen with Atari logo already, then it can stop in the middle of the output "Memory Test", so it could just write a part of it.
I'm just contemplating whether there is a risk of setup-time violations for the 030 when latching the data bus with data from the Flash chip as the margin doesn't seem to be very high when running at 50 MHz.
I didn't look in detail into the SDRAM, but it uses a different control logic and has a very different timing characteristic compared to the Flash chip.
From the code it looks like it takes about 2 seconds before the high-speed mode can be used (500 kHz clock, 2^20 ticks counted):
https://github.com/dh219/DFB/blob/83857 ... b1r5.v#L72
I have the white screen with Atari logo already, then it can stop in the middle of the output "Memory Test", so it could just write a part of it.
I'm just contemplating whether there is a risk of setup-time violations for the 030 when latching the data bus with data from the Flash chip as the margin doesn't seem to be very high when running at 50 MHz.
I didn't look in detail into the SDRAM, but it uses a different control logic and has a very different timing characteristic compared to the Flash chip.
Re: DFBX1 Issues
I can't do much as I'm not at home and probably won't be able to look into more for a couple days.
If it is a data bus issue then meanwhile, I'd suggest hacking on another 10k sil on the back of the falcon motherboard sils. Then see if its more stable. The cpu has stronger pulldown current than pullup. So the extra pullup current should solve the problem. If it does, then it would have to be a future mod on DFB1X runs.. So it be useful to know if that is the issue.
If it is a data bus issue then meanwhile, I'd suggest hacking on another 10k sil on the back of the falcon motherboard sils. Then see if its more stable. The cpu has stronger pulldown current than pullup. So the extra pullup current should solve the problem. If it does, then it would have to be a future mod on DFB1X runs.. So it be useful to know if that is the issue.
Re: DFBX1 Issues
This is an area I know is different between current DFB1 release code and DFB1X. DFB1X swtiches based on the bus control CPU speed register access.charon030 wrote: Mon Dec 01, 2025 11:41 am TT RAM always works for me (40/50 MHz, Flash on/off).
From the code it looks like it takes about 2 seconds before the high-speed mode can be used (500 kHz clock, 2^20 ticks counted):
https://github.com/dh219/DFB/blob/83857 ... b1r5.v#L72
When I implemented that delay I hadn't figured out what the problem was yet so it was a simple timer that is normally sufficient to get past the point that the bus is switched to 16MHz which, as implied by my comment there, takes longer to happen under ET than TOS4.
(the background being the clock switching logic causes at least one half-cycle of half-speed upon switch. This is fine at 16MHz but breaks down at 8MHz)
BW
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Re: DFBX1 Issues
Thanks for that explanation. But I don't think I got what you mean with "half-cycle of half-speed upon switch" and why this breaks at 8 MHz but works with 16 MHz.Badwolf wrote: Mon Dec 01, 2025 2:40 pm When I implemented that delay I hadn't figured out what the problem was yet so it was a simple timer that is normally sufficient to get past the point that the bus is switched to 16MHz which, as implied by my comment there, takes longer to happen under ET than TOS4.
(the background being the clock switching logic causes at least one half-cycle of half-speed upon switch. This is fine at 16MHz but breaks down at 8MHz)
BW
EDIT: And it was interesting to browse through the Verilog code to get a better understanding how the accelerator works. W.r.t. clocking it does the same as my previous accelerator (PowerUP2). That one clocked the CPU at 32 MHz whenever there was no bus access at 16 MHz happening. That gave a nice boost already. And it explains why I saw practically zero gain in Gembench with the DFBX1 installed while Flash or TT-RAM are not being used. It seems the difference between 50 MHz and 32 MHz is negligible when only ST-RAM accesses happen as the caches of the CPU are too small to process longer periods without ST-RAM accesses.
Re: DFBX1 Issues
It's not urgent for me. Would it be possible to make a trial with a test-firmware for the CPLD that uses an extra delay cycle for flash accesses, once you have time again? I think it's just a one-liner to change in Verilog (see previous posts). At the same time I don't want to appear too demanding. But it would just be nice to have the NetUSBee usable with full performance of the accelerator. I don't care if access time is 80ns or 100ns. For 40 MHz it seems to be 100ns anyways.exxos wrote: Mon Dec 01, 2025 12:09 pm I can't do much as I'm not at home and probably won't be able to look into more for a couple days.
If it is a data bus issue then meanwhile, I'd suggest hacking on another 10k sil on the back of the falcon motherboard sils. Then see if its more stable. The cpu has stronger pulldown current than pullup. So the extra pullup current should solve the problem. If it does, then it would have to be a future mod on DFB1X runs.. So it be useful to know if that is the issue.
Thanks.
