Sign in

Mark Moxon

@markmoxon.bsky.social
1.2K followers 440 following 822 posts

Writer, walker, software archaeologist. Back in the day: Editor of Acorn User, Editor of h2g2. I love analysing old code, and my aim is to create the best code disassemblies you have ever seen. Purveyor of Elite/Lander/Revs hacks. www.markmoxon.com

PostsRepliesMedia
Mark Moxon @markmoxon.bsky.social · 06/09/2026
Paper 2 explores the epic Saturn loading screen, a mathematical work of art Fairbank, Michael and Moxon, Mark (2026) Analysing the Saturn Loading Screen from the Classic Computer Game: Elite. In: IEEE Conference on Games, 2026-09-01 - 2026-09-04, Madrid Free download: repository.essex.ac.uk/43578/
The first page of the paper on the Saturn loading screenThe Saturn from the loading screen in the cassette version of BBC Micro Elite
1254 0
Mark Moxon @markmoxon.bsky.social · 06/09/2026
Paper 1 investigates the maths behind the rotating planets, and their glorious craters and meridians Fairbank, Michael and Moxon, Mark (2026) The Rotating Planets in the Classic Game: Elite. In: IEEE Conference on Games, 2026-09-01 - 2026-09-04, Madrid Free download: repository.essex.ac.uk/43577/
The first page of the paper on the rotating planetsThe planet Leesti in Elite, showing a crater
190 0
Mark Moxon @markmoxon.bsky.social · 06/09/2026
Two bona fide academic papers on #BBCMicro Elite have just been presented at the IEEE Conference on Games in Madrid I'm a co-author, alongside Michael Fairbank from the University of Essex They're a great read! And free to download Details in thread… #retrogaming #retrocomputing #elitedangerous
The papers, listed on the IEEE CoG website at https://cog2026.org/acceptedpapers
36114 0
Mark Moxon @markmoxon.bsky.social · 05/09/2026
For #BBCMicro fans, the mode 7 teletext Acornsoft loading screen is iconic So I've been adding customised versions to some of my more sophisticated Elite hacks That's better - I should have done this ages ago! See elite.bbcelite.com/hacks/ for more hacking goodness #retrocomputing #acorn
Elite 3D loading screenElite Universe Editor loading screenTeletext Elite loading screenTwo-player Elite loading screen
2417 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
If you do, here are some of my other Elite hacks: Elite Compendium elite.bbcelite.com/hacks/elite_... Elite Universe Editor elite.bbcelite.com/hacks/elite_... Teletext Elite elite.bbcelite.com/hacks/telete... Elite 3D elite.bbcelite.com/hacks/elite_... Until next time, Commanders! 🫡 (10/10)
Thargoid-based combat in two-player Elite
1121 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
I’m indebted to the Acorn team at @tnmoc.bsky.social who tried out the game and helped me track down some of the gnarlier bugs Although there will definitely be some issues left, it’s so complicated If you spot anything, let me know and I’ll see what I can do to fix it I hope you like it! (9/10)
Firing a missile in two-player Elite
170 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
It’s worth mentioning that this project is 100% AI-free, like all my projects I use a very minimal development environment and I hand-code absolutely everything The source code includes all the modifications I’ve made in this hack, and it’s all fully documented, both on-site and in-source (8/10)
Admiring the planet in two-player Elite
170 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
The game requires a 6502 Second Processor fitted to a BBC Micro or BBC Master It supports the keyboard, joysticks, and all the buttons on the Delta 14B For one human player, you only need your computer For two human players, you’ll need at least one joystick Twin joysticks are great fun! (7/10)
Twin Delta 14B joysticks and BBC Micro B+, signed by David Braben
140 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
You can also choose from the following: * Four types of lasers * Three types of energy unit * Missiles * Anti-missile E.C.M. And your fight can be to the death, or the first to reach a specific number of hits The latter is great fun and brings a whole new challenge to one-on-one combat (6/10)
Fighting as a Thargoid in two-player Elite
150 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
Two-player Elite lets you choose each player’s ship from: * Cobra Mk III * Python * Anaconda * Viper * Sidewinder * Mamba * Krait * Moray * Thargoid Bigger ships are easier to hit, while smaller ones are a lot sneakier And, at last, you can choose to be a Thargoid, if that’s your bag (5/10)
The configuration screen in two-player Elite
150 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
If you don’t have a human to hand, don’t panic: two-player Elite’s “AI Pilot” mode uses the game’s normal tactics routines to give you a proper deep-space fight for one For those of us who grew up playing the original Elite, it’s finally a chance to see things from the enemy’s perspective! (4/10)
An incoming missile for player 2 in two-player Elite
150 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
I have also written an extensive article about how I hacked a second player into BBC Elite: elite.bbcelite.com/hacks/two-pl... It’s a very long read (15,000+ words!), but I wanted to explain everything properly This is my most complex Elite hack to date, so there’s an awful lot to cover… (3/10)
The game over screen in two-player Elite
160 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
Here are the links: About two-player Elite elite.bbcelite.com/hacks/two-pl... Downloads elite.bbcelite.com/hacks/two-pl... Instructions elite.bbcelite.com/hacks/two-pl... Play in a browser (press F10 to play) bbc.xania.org?coProcessor=... Code repository github.com/markmoxon/el... (2/10)
A dogfight in two-player Elite
1100 0
Mark Moxon @markmoxon.bsky.social · 03/09/2026
I am thrilled to announce the release of my latest Elite hack: Two-player Elite for the #BBCMicro This is the original 1980s Acornsoft Elite, but with split-screen, two-player, deep-space combat See the thread for links, downloads and details (1/10) #retrocomputing #retrogaming #elitedangerous
414255 0
Mark Moxon @markmoxon.bsky.social · 30/08/2026
Status check for two-player #BBCMicro Elite: Development… [Done] Testing… [Done] Website… [Done] Technical deep dive… [Overdone] Code repository… [Done] Document all mods… [Done] Confirm date… [Done] Releasing this Thursday, 3 September Get your twin joysticks ready! #retrogaming #retrocomputing
Game over screen from two-player Elite
27925 0
Mark Moxon @markmoxon.bsky.social · 24/08/2026
I love it when projects include side quests Two-player #BBCMicro #Elite (releasing next week) was having Delta 14B joystick issues, so I built a test tool This proved the hardware was bad, not the code (phew!) And I've released the code for others to use A fun detour! github.com/markmoxon/de...
Delta 14B joystick tester
0345 0
Mark Moxon @markmoxon.bsky.social · 07/08/2026
Two-player Elite on the #BBCMicro is finally feature-complete. Phew, that was a long road! Got a few bugs to fix, but the Acorn team at @tnmoc.bsky.social have road-tested and given it a thumbs up, so that's a good sign. September release, I hope... #retrocomputing #retrogaming #8bit #elite
Title screen for two-player EliteCombat in two-player Elite
59924 0
Mark Moxon @markmoxon.bsky.social · 24/07/2026
Two-player #BBCMicro Elite has just become the first game ever to support all the buttons on twin Delta 14B joysticks So two players can dogfight in Elite without either of them needing the keyboard For some of us, this is a dream come true! And it justifies all this hardware I keep buying... 😀
Two-player EliteKey legend for the Delta 14B in two-player EliteOne Delta 14B joystick and the 14B/1 adaptor box
37815 0
Mark Moxon @markmoxon.bsky.social · 16/07/2026
Missiles are now working in two-player #BBCMicro Elite. This clip shows player 1 firing a missile at player 2 (in the bottom view) and then player 2 retaliating (in both views). This was really difficult to build! But it's important; see the thread for details. #retrocomputing #retrogaming (1/3)
26714 0
Mark Moxon @markmoxon.bsky.social · 11/07/2026
That is excellent to hear… as my notes from way back seem to agree, I just didn’t have the confidence to document it that way. But I think now that I have a totally independent view agreeing with my guess, it’s time to document that baby! Thank you James! 👍
From my notes…
000 0
Mark Moxon @markmoxon.bsky.social · 25/06/2026
To help me test two-player #BBCMicro Elite, I’ve added “AI Pilot” as an option It uses the game’s 1984 tactics routines to fly player 2 (bottom view) It’s really interesting to watch Elite’s original “AI” from inside the other ship’s cockpit - in this case, an NPC Python #retrocomputing (1/3)
25811 0
Mark Moxon @markmoxon.bsky.social · 21/06/2026
Two-player #BBCMicro Elite will be a deep-space dogfight game The rest of Elite wouldn’t be that exciting with two players, so I’m sticking to the core combat experience When you fire it up, you can choose what kind of contest you want Here's the all-new config screen 🚀 Game on! #retrocomputing
514037 0
Mark Moxon @markmoxon.bsky.social · 14/06/2026
And finally, the game is now noticeably more accurate I originally used the game’s 8x24-bit dot-product routine to calculate ship positions, but that only uses half of each 16-bit orientation vector I’ve now built a 16x24-bit routine, and it’s a fair bit smoother Slowly getting better! (5/6)
1130 0
Mark Moxon @markmoxon.bsky.social · 14/06/2026
Another improvement is that both players now get to see both the planet and the sun This wasn’t easy to add for player 2, as the accuracy of matrix maths at big distances is a challenge in 6502 But they’re an important part of the immersion, and those mode 1 suns are just so darn pretty… (4/6)
160 0
Mark Moxon @markmoxon.bsky.social · 14/06/2026
The two-player dashboard is now wired up to show each player’s status Each compass points to the other player, so you can track down a faraway opponent The scanner is shared using different colours for each player - it works well The only part that doesn’t work (yet) is the missile counter (3/6)
140 0
Mark Moxon @markmoxon.bsky.social · 14/06/2026
The headline feature is that two-player Elite now has frickin’ laser beams And there’s a hit counter too So dogfights can either be “last one standing” or “first to 100 hits” (say) And the laser types are configurable - military lasers really make that hit counter go brrrr Game on! (2/6)
160 0
Mark Moxon @markmoxon.bsky.social · 14/06/2026
I’ve been beavering away at two-player #BBCMicro Elite These videos show the most recent improvements: laser beams, hit counters, two-player dashboard, planets, suns and more accuracy It’s quite difficult to film! See the thread for a tour of what’s new… (1/6) #retrocomputing #retrogaming #8bit
36015 0
Mark Moxon @markmoxon.bsky.social · 12/06/2026
Two-player #BBCMicro Elite now has a two-player dashboard Each player has their own set of indicators: speed, attitude control, fore and aft shields, laser temperature, energy, missiles and compass They share the scanner, which works well It’s starting to feel like a proper game! #retrocomputing
Two-player Elite with a two-player dashboard
36612 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
Bonus video: someone asked me to show the two ships looking at each other in a spaghetti-western style. Here you go: Cobra vs Viper, head-on. It doesn't end well.
2365 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
I’m building this on the BBC Micro with 6502 Second Processor because it makes development so much easier It should be possible to do a standard BBC Micro version, but it might need sideways RAM and speed could be more of an issue It’s very early days! But we’re getting there… 🚀💥🚀 (6/6)
6502 Second Processor
4280 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
Controls are either twin joysticks, or player 1 on keyboard and player 2 on joystick Speed and view changes are done with the keyboard for both players I also plan to support two Delta 14B joysticks (the ones with the buttons) for the best experience (5/6)
Delta 14B joystick
1150 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
The less good news is that it isn’t accurate enough yet, so player 1’s ship jumps around a bit This is because I’ve used Elite’s own dot product code, which was designed for visibility checks, so only the sign bit is accurate I’m writing a double-precision version that I hope will fix this (4/6)
1160 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
Player 1’s scanner view is in cyan, player 2’s scanner view is in yellow. Players will be able to choose different ships and loadouts The good news is that this proof-of-concept confirms that the geometry behind two-player Elite is sound That’s the tricky part, so this is a relief! (3/6)
1160 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
The videos show player 1 (top) in a Cobra Mk III and player 2 (bottom) in a Viper They demonstrate both ships independently flying past each other This clip shows the rear view working too Though it’s a bit hard to demo a two-player game when there’s only one of me! 😂 No lasers yet… (2/6)
1170 0
Mark Moxon @markmoxon.bsky.social · 30/05/2026
Two-player #BBCMicro #Elite is coming along nicely. It now supports two pilots in two ships with two controllers and a split-view screen Here are some work-in-progress videos - see the thread for an explanation There’s lots to fix, but at least we have a proof-of-concept… (1/6) #retrocomputing
1412439 0
Mark Moxon @markmoxon.bsky.social · 01/05/2026
My favourite game: Elite (picture 1) My latest purchase: Twin joysticks (picture 2) My plan: Squish ’em together to see what happens (picture 3) This should be a fun project! Note: Picture 3 is a genuine in-game work-in-progress screenshot, but it’s VERY early days… #retrocomputing #BBCMicro
Elite on the BBC Micro with 6502 Second ProcessorDelta 3B twin joysticks for the BBC MicroWork-in-progress two-player Elite
6417 0
Mark Moxon @markmoxon.bsky.social · 26/04/2026
When I do add it, I will add an arrow to show the cassette-demo-disc relationship properly, like this. Left to right unless specified differently. I think that’s better?
Elite family tree
170 0
Mark Moxon @markmoxon.bsky.social · 26/04/2026
We have a new addition to the 6502 Elite Source Code Family Tree! Turns out the Elite Demonstration Disc is a fork of the cassette version, but incorporates the docking computer routines from the disc version for the self-flying combat AI. Welcome to the tree, demo. 🫡 #bbcmicro #c64 #nes #apple2
The 6502 Elite Source Code Family Tree, now incorporating the demo
1396 0
Mark Moxon @markmoxon.bsky.social · 19/04/2026
I've started disassembling the #BBCMicro Elite Demonstration Disc. Acornsoft sent this out to shops in 1984. It flies itself and contains rudimentary pilot AI. Did anyone see this back in the day? It’s fun to watch! You can run it in your browser: bbc.xania.org?autoboot&dis... #retrocomputing
The Elite Demonstration Disc
44512 0
Mark Moxon @markmoxon.bsky.social · 12/04/2026
It's finished! The Sentinel, Geoff Crammond's epic game, is now fully documented. * 41,902 lines of lovingly annotated source code * 51 deep dives (116,240 words) * Buildable repository * 100% handcrafted AI-free content * 7 months’ work thesentinel.bbcelite.com #retrocomputing #C64 #BBCMicro
A stack of boulders with a robot on top
Generating the landscape in The Sentinel
A panorama of landscape 0000 in The Sentinel
A contour map of the landscape in The Sentinel
9331114 0
Mark Moxon @markmoxon.bsky.social · 10/04/2026
What links The Sentinel with "Every Breath You Take"? Why, it’s the minor added 9th chord, of course! And the fact that they’re both 1980s classics Find out more in batch #10 of my deep dives: thesentinel.bbcelite.com/deep_dives Batch #11 (last one!) soon Enjoy! #retrocomputing #c64 #bbcmicro
The Sentinel's title screenThe cover of the "Every Breath You Take" single
1195 0
Mark Moxon @markmoxon.bsky.social · 06/04/2026
I just wrote word number 100,000 of my deep dives into the epic game The Sentinel. I know quantity <> quality, but milestones are important in projects this long. I started this project in September! Seems like a lifetime ago. Here's my progress chart. Nearly there… #retrocomputing #c64 #bbcmicro
Progress chart for 51 articles
1292 0
Mark Moxon @markmoxon.bsky.social · 24/03/2026
Left: The Sentinel and four sentries, from the landscape preview in the classic game. Astonishingly, these are not sprites. They are fully rendered 3D objects, using the same code as the game. Right: a robot, drawn by the same routine. Micro *and* macro excellence! #retrocomputing #c64 #bbcmicro
The Sentinel and four sentries, drawn very smallA high-resolution robot, drawn in-game in The Sentinel
0253 0
Mark Moxon @markmoxon.bsky.social · 21/03/2026
This is my first time using a memory heatmap to analyse #BBCMicro code Here's The Sentinel calculating landscape visibility (b-em emulator) Look: ray-casting radar patterns matching the landscape layout, right there in memory! The algorithm revealed! I love this #retrocomputing meta-level stuff 🤯
3304 0
Mark Moxon @markmoxon.bsky.social · 11/03/2026
Not sure if this animated GIF will look any good on here, but the latest batch of articles talks about how the 3D objects are drawn, such as the Sentinel example here. It's pretty interesting when it's slowed down...
2141 0
Mark Moxon @markmoxon.bsky.social · 27/02/2026
This is pretty cool. It's a visualisation of the internals of The Sentinel on the #BBCMicro. This is it generating the game landscape for the first level from 256 pseudo-random numbers. Next week I'll be releasing a deep dive into exactly how this works. #retrocomputing #retrogaming #c64 #8bit
410315 0
Mark Moxon @markmoxon.bsky.social · 31/01/2026
I've started writing a series of deep dives into Geoff Crammond's epic #BBCMicro game The Sentinel. Here's the to-do list. I will post a link here whenever I add a new one to thesentinel.bbcelite.com It's going to take a while! But it should be worth it... #retrocomputing #retrogaming #c64 #8bit
The list of deep dives that I am working on
5484 0
Mark Moxon @markmoxon.bsky.social · 13/01/2026
You didn't know you needed this in your life, but you do. Marine Beaufils is a French artist who creates beautiful embroideries of... The Sentinel (amongst others). It's inspired and quite beautiful. Enjoy! www.marine.st/en/pages/sen... #bbcmicro #zxspectrum #c64 #retrogaming #retrocomputing
The Sentinel in embroidery
2326 0
Mark Moxon @markmoxon.bsky.social · 10/01/2026
And here's the game's opening screen, for reference.
The initial screen in The Sentinel
070 0
Mark Moxon @markmoxon.bsky.social · 10/01/2026
Have you ever wondered how big the full landscape is in The Sentinel? It's 1856 pixels high and 2048 pixels wide. Here's the first level. The initial 192x160 screen is in red. Panning jumps the view to different grid points. It's a big old world! #retrocomputing #retrogaming #bbcmicro #c64 #8bit
The first level in The SentinelThe first level in The Sentinel showing grid points for panning and the first screen in red
3507 0