Cool thanksstephen_usher wrote: Sun Jan 04, 2026 1:24 pm
And, yes, I agree with your idea for the clock generator connection.
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 MOBILE / CGNAT DEVICES WHERE THE IP CHANGES CONSTANTLY!
At this time, it is unfortunately not possible to whitelist 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 whitelist 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!
The Naked Atari 800
- rubber_jonnie
- Site Admin

- Posts: 14014
- Joined: Thu Aug 17, 2017 7:40 pm
- Location: Essex
- Contact:
Re: The Naked Atari 800
Collector of many retro things!
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
Re: The Naked Atari 800
Great. One of the best things you can do on an 800, that doesn't work on XL/XE models, is to play MULE with 4 players. Of course, you need 3 other playersrubber_jonnie wrote: Sat Jan 03, 2026 3:28 pm So I'm going to get back to the Si5351 shortly, but I had a care package from Best today:
And in it was a PAL GTIA, Antic, 6502B, 6502C (Sally) and four PAL 3.546894 MHz crystals.
...
OK, so the naked 800 is fully working![]()
http://github.com/ijor/fx68k 68000 cycle exact FPGA core
FX CAST Cycle Accurate Atari ST core
http://pasti.fxatari.com
FX CAST Cycle Accurate Atari ST core
http://pasti.fxatari.com
- rubber_jonnie
- Site Admin

- Posts: 14014
- Joined: Thu Aug 17, 2017 7:40 pm
- Location: Essex
- Contact:
Re: The Naked Atari 800
Indeed, one of my favourite games, even single playerijor wrote: Mon Jan 05, 2026 1:39 pmGreat. One of the best things you can do on an 800, that doesn't work on XL/XE models, is to play MULE with 4 players. Of course, you need 3 other playersrubber_jonnie wrote: Sat Jan 03, 2026 3:28 pm So I'm going to get back to the Si5351 shortly, but I had a care package from Best today:
And in it was a PAL GTIA, Antic, 6502B, 6502C (Sally) and four PAL 3.546894 MHz crystals.
...
OK, so the naked 800 is fully working![]()
![]()
I used to play M.U.L.E on my XLs, wonder if it was a later version?
Collector of many retro things!
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
Re: The Naked Atari 800
There is only one version. The difference is that the 800 has 4 joystick ports, and the XL has only two. MULE supports paddles, and you can put two paddles per joystick port. But at least one joystick is required. So in the XL you can connect two paddles and one joystick for maximum 3 players. For 4 players, an 800 is required.rubber_jonnie wrote: Mon Jan 05, 2026 1:44 pm I used to play M.U.L.E on my XLs, wonder if it was a later version?
http://github.com/ijor/fx68k 68000 cycle exact FPGA core
FX CAST Cycle Accurate Atari ST core
http://pasti.fxatari.com
FX CAST Cycle Accurate Atari ST core
http://pasti.fxatari.com
- rubber_jonnie
- Site Admin

- Posts: 14014
- Joined: Thu Aug 17, 2017 7:40 pm
- Location: Essex
- Contact:
Re: The Naked Atari 800
Sorry, I misunderstood, I thought you meant M.U.L.E didn't work at all on the XL, my mistake.ijor wrote: Mon Jan 05, 2026 1:54 pmThere is only one version. The difference is that the 800 has 4 joystick ports, and the XL has only two. MULE supports paddles, and you can put two paddles per joystick port. But at least one joystick is required. So in the XL you can connect two paddles and one joystick for maximum 3 players. For 4 players, an 800 is required.rubber_jonnie wrote: Mon Jan 05, 2026 1:44 pm I used to play M.U.L.E on my XLs, wonder if it was a later version?
I hadn't heard about the paddles though, I must try that!
Collector of many retro things!
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
Re: The Naked Atari 800
Sorry, I can see now it was my phrasing that was misleading. But come on, if MULE wouldn't work in the XL, who will buy an XL at all in the first place?rubber_jonnie wrote: Mon Jan 05, 2026 1:59 pm Sorry, I misunderstood, I thought you meant M.U.L.E didn't work at all on the XL, my mistake.
Yep. One of the many brilliant details implemented in MULE. Be aware it is a little bit awkward, though. You need the joystick for the developing phase. So if you are playing with paddles and it's your developing turn, you must take the joystick. This is why at least one joystick is required.I hadn't heard about the paddles though, I must try that!
http://github.com/ijor/fx68k 68000 cycle exact FPGA core
FX CAST Cycle Accurate Atari ST core
http://pasti.fxatari.com
FX CAST Cycle Accurate Atari ST core
http://pasti.fxatari.com
- rubber_jonnie
- Site Admin

- Posts: 14014
- Joined: Thu Aug 17, 2017 7:40 pm
- Location: Essex
- Contact:
Re: The Naked Atari 800
100%, it was the first game I EVER saw running on an 8 Bit Atari and if you want to phrase it in modern terms, then it was a 'killer app'ijor wrote: Mon Jan 05, 2026 2:20 pm
Sorry, I can see now it was my phrasing that was misleading. But come on, if MULE wouldn't work in the XL, who will buy an XL at all in the first place?![]()
Now I saw it first on an 800, and didn't realise that there were some compatibility issues with the XL I bought later on, but M.U.L.E always worked with my 800XL and 1050 combo. Epic game IMHO.
I do have another 800 as well, fully cased and with Incognito Gold and I love it to bits, the 'Naked 800' is purely because I want spares and it is useful for tesing some stuff I'm doing.ijor wrote: Mon Jan 05, 2026 2:20 pm Yep. One of the many brilliant details implemented in MULE. Be aware it is a little bit awkward, though. You need the joystick for the developing phase. So if you are playing with paddles and it's your developing turn, you must take the joystick. This is why at least one joystick is required.
I will have to try the paddles out at some point.
Collector of many retro things!
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
- rubber_jonnie
- Site Admin

- Posts: 14014
- Joined: Thu Aug 17, 2017 7:40 pm
- Location: Essex
- Contact:
Re: The Naked Atari 800
OK folks, I decided today would be the day to try replacing the 3.546894 MHz crystal on The Naked 800 with an Si55351 based clock generator as I'd discussed in earlier posts.
I pulled the existing crystal, removed R106 and Q102 thus turning off the old oscillator circuit and placed the clock generator in place of R106, with GND to GND and the clock out to pin C of the CPU card socket.
You can see it in the next couple of photos:
At present, and since the Si5351 doesn't retain config when powered off, I have a Pi Zero 2W attached so that I can inject the config over I2C on demand and prior to powering on the 800. This give me a nice clock signal:
And the machine runs just fine in PAL mode with all the colours present and correct
I'm pretty pleased this works since the 3.546894 MHz crystals (Which I do now have BTW) are so damn hard to get hold of in the UK. Of course the beauty of this is that the Si5351 modules are quite inexpensive and readily available and can create a clock signal of anywhere between 8Khz and 160Mhz. That flexibility along with up to 3 clock outputs on the modules I have means missing crystals don't have to be the end of the world.
The next stage for me will be to make the whole thing stand alone rather than need an RPi that I need to execute code on in order to start the Si5351 clocks up.
So what I intend to do next is sort out an ATTiny 85 that will boot and send the config to the Si5351 as soon as power comes on, and all driven by 5v from the Atari 800.
Will post more when I get to that stage
I pulled the existing crystal, removed R106 and Q102 thus turning off the old oscillator circuit and placed the clock generator in place of R106, with GND to GND and the clock out to pin C of the CPU card socket.
You can see it in the next couple of photos:
At present, and since the Si5351 doesn't retain config when powered off, I have a Pi Zero 2W attached so that I can inject the config over I2C on demand and prior to powering on the 800. This give me a nice clock signal:
And the machine runs just fine in PAL mode with all the colours present and correct
I'm pretty pleased this works since the 3.546894 MHz crystals (Which I do now have BTW) are so damn hard to get hold of in the UK. Of course the beauty of this is that the Si5351 modules are quite inexpensive and readily available and can create a clock signal of anywhere between 8Khz and 160Mhz. That flexibility along with up to 3 clock outputs on the modules I have means missing crystals don't have to be the end of the world.
The next stage for me will be to make the whole thing stand alone rather than need an RPi that I need to execute code on in order to start the Si5351 clocks up.
So what I intend to do next is sort out an ATTiny 85 that will boot and send the config to the Si5351 as soon as power comes on, and all driven by 5v from the Atari 800.
Will post more when I get to that stage
Collector of many retro things!
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
- stephen_usher
- Site sponsor

- Posts: 7127
- Joined: Mon Nov 13, 2017 7:19 pm
- Location: Oxford, UK.
- Contact:
Re: The Naked Atari 800
Looks excellent!
How easy is it to get the ATTiny85 to program the clock gen? The ATTiny 85 only has a little memory and four(?) I/O pins.
How easy is it to get the ATTiny85 to program the clock gen? The ATTiny 85 only has a little memory and four(?) I/O pins.
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.
- rubber_jonnie
- Site Admin

- Posts: 14014
- Joined: Thu Aug 17, 2017 7:40 pm
- Location: Essex
- Contact:
Re: The Naked Atari 800
It's using I2C to send over the data to the clockgen, so only 2 pins required for that, and the code should be very small. The current Python code on the RPi is this:stephen_usher wrote: Sun Jan 11, 2026 4:44 pm Looks excellent!
How easy is it to get the ATTiny85 to program the clock gen? The ATTiny 85 only has a little memory and four(?) I/O pins.
Code: Select all
#SMBUS programming script to directly program the Si5351 boards. Used because the I2C method failed.
#This requires the registers from Clockbuilder Pro to work. This programs the Si5351 to output 3.546894 MHz on CLK0.
from smbus2 import SMBus
# I2C bus 1 on Raspberry Pi
bus = SMBus(1)
addr = 0x60 # Si5351 default I2C address
# ClockBuilder Pro register dump
registers = [
(2, 0x53),
(3, 0x00),
(4, 0x20),
(7, 0x00),
(15, 0x00),
(16, 0x0F),
(17, 0x8C),
(18, 0x8C),
(19, 0x8C),
(20, 0x8C),
(21, 0x8C),
(22, 0x8C),
(23, 0x8C),
(26, 0xEB),
(27, 0xC2),
(28, 0x00),
(29, 0x0F),
(30, 0xF2),
(31, 0xB6),
(32, 0x04),
(33, 0x1C),
(42, 0x00),
(43, 0x01),
(44, 0x00),
(45, 0x7C),
(46, 0x80),
(47, 0x00),
(48, 0x00),
(49, 0x00),
(90, 0x00),
(91, 0x00),
(149, 0x00),
(150, 0x00),
(151, 0x00),
(152, 0x00),
(153, 0x00),
(154, 0x00),
(155, 0x00),
(162, 0x00),
(163, 0x00),
(164, 0x00),
(165, 0x00),
(183, 0x92),
]
# Write all registers
for reg, val in registers:
bus.write_byte_data(addr, reg, val)
print("Si5351 programmed successfully.")
Code: Select all
#include <TinyWireM.h> // I2C master library for ATtiny85
#define SI5351_ADDR 0x60
// ClockBuilder Pro register dump
const uint8_t regs[][2] = {
{2, 0x53},
{3, 0x00},
{4, 0x20},
{7, 0x00},
{15, 0x00},
{16, 0x0F},
{17, 0x8C},
{18, 0x8C},
{19, 0x8C},
{20, 0x8C},
{21, 0x8C},
{22, 0x8C},
{23, 0x8C},
{26, 0xEB},
{27, 0xC2},
{28, 0x00},
{29, 0x0F},
{30, 0xF2},
{31, 0xB6},
{32, 0x04},
{33, 0x1C},
{42, 0x00},
{43, 0x01},
{44, 0x00},
{45, 0x7C},
{46, 0x80},
{47, 0x00},
{48, 0x00},
{49, 0x00},
{90, 0x00},
{91, 0x00},
{149, 0x00},
{150, 0x00},
{151, 0x00},
{152, 0x00},
{153, 0x00},
{154, 0x00},
{155, 0x00},
{162, 0x00},
{163, 0x00},
{164, 0x00},
{165, 0x00},
{183, 0x92}
};
void writeReg(uint8_t reg, uint8_t val) {
TinyWireM.beginTransmission(SI5351_ADDR);
TinyWireM.write(reg);
TinyWireM.write(val);
TinyWireM.endTransmission();
}
void setup() {
TinyWireM.begin();
// Write all registers
for (uint8_t i = 0; i < sizeof(regs)/2; i++) {
writeReg(regs[i][0], regs[i][1]);
}
// Optional: reset PLLs (recommended by Silicon Labs)
// Register 177: bit 7 = reset PLLA, bit 6 = reset PLLB
// writeReg(177, 0xA0);
// Done
}
void loop() {
// Nothing to do — ATtiny just configures the Si5351 once at boot
}
I just need to try it next on the bench, see if it works. If it does then I'll see if I can wire it independently for the 800.
I should be able to program it over USB using the Arduino IDE.
Collector of many retro things!
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...
800XL and 65XE both with Ultimate1MB,VBXL/XE & PokeyMax, SIDE3, SDrive Max, 2x 1010 cassette, 2x 1050 one with Happy mod, 3x 2600 Jr, 7800 and Lynx II
Approx 20 STs, including a 520 STM, 520 STFMs, 3x Mega ST, MSTE & 2x 32 Mhz boosted STEs
Plus the rest, totalling around 50 machines including a QL, 3x BBC Model B, Electron, Spectrums, ZX81 etc...