Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Mark Moxon

@markmoxon@universeodon.com
mastodon 4.6.8
  • Open on universeodon.com

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.

1092 Followers
122 Following
38 Posts
Joined November 19, 2022
Personal website:
https://www.markmoxon.com
GitHub:
https://github.com/markmoxon
Software archaeology website:
https://www.bbcelite.com
RSS feed of my posts on Mastodon:
https://universeodon.com/@markmoxon.rss
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago

It's finished! The Sentinel, Geoff Crammond's epic game, is now fully documented at https://thesentinel.bbcelite.com

  • 41,902 lines of lovingly annotated source code

  • 51 deep dives (116,240 words)

  • Fully buildable code repository

  • 100% handcrafted AI-free content

  • 7 months’ work

If you have enjoyed this project, you might like my other software archaeology projects at https://www.bbcelite.com

  • Elite on the 6502

  • Aviator on the BBC Micro

  • Revs on the BBC Micro

  • Lander on the Acorn Archimedes

Time for a new project now… after a bit of a break. See you soon!

#retrocomputing #C64 #BBCMicro

thesentinel.bbcelite.com
140
8
97
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago

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: https://bbc.xania.org/?autoboot&disc=https://elite.bbcelite.com/versions/demonstration_disc/elite-demonstration-disc.ssd

For more info, check out this page from the excellent @frontierastro@universeodon.com:

https://www.frontierastro.co.uk/Elite/bbc_disc.html

I hope to add this to my site in the next few weeks, once I’ve documented the extra code… watch this space!

#retrocomputing

universeodon.com
26
3
15
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

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

universeodon.com
20
4
4
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

I've just completed 70% of my planned 50+ deep dives into The Sentinel, Geoff Crammond's epic #BBCMicro game

Batch #7 is now ready: 4 new articles about drawing the 3D landscape, ray-casting and quadrants

https://thesentinel.bbcelite.com/deep_dives

Batch #8 coming soon

Enjoy!

#retrocomputing #c64 #8bit

universeodon.com
19
2
10
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

Find out how the Sentinel thinks with my latest deep dives

Batch 9 covers enemy tactics, and following the gaze vector to work out what the player and enemies can see in the 3D world

https://thesentinel.bbcelite.com/deep_dives

Batch 10 (sound & music) coming soon

Enjoy!

#retrocomputing #c64 #bbcmicro

thesentinel.bbcelite.com
11
0
3
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 7mo ago
I'm releasing over 50 deep dives into The Sentinel, Geoff Crammond's epic #BBCMicro game. Batch #1 is now ready: 6 new articles about memory maps, program flow and interrupts, all at: https://thesentinel.bbcelite.com/deep_dives Batch #2 (maths, lots of!) coming soon. Enjoy! #retrocomputing #retrogaming #c64 #8bit
thesentinel.bbcelite.com
16
0
5
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 7mo ago
I'm (slowly!) releasing 50+ deep dives into The Sentinel, Geoff Crammond's epic #BBCMicro game. Batch #2 is now ready: 7 new articles about maths, geometry, trigonometry… and Revs. https://thesentinel.bbcelite.com/deep_dives Batch #3 (landscape) coming soon. Enjoy! #retrocomputing #retrogaming #c64 #8bit
thesentinel.bbcelite.com
13
1
7
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 7mo ago

Just released: 6 brand new deep dives into The Sentinel on the #BBCMicro and #C64

This is where it gets interesting!

Generating 10,000 3D landscapes; tile data and shapes; enemies and trees; secret codes

https://thesentinel.bbcelite.com/deep_dives#latest

Batch #4 coming soon

Enjoy!

#retrocomputing

universeodon.com
12
0
6
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
This is pretty amazing. Draw accurate landscapes from The Sentinel on a pen plotter? And animate them? I'm definitely in! https://newsletter.revdancatt.com/p/085-the-sentinel-adventures-in-animation I do my projects for a lot of reasons, but seeing what people do with them? Yeah, that's a big one. 😀 #bbcmicro #c64 #retrocomputing
newsletter.revdancatt.com
8
0
3
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

Documenting The Sentinel is really growing my collection of disassemblies at https://www.bbcelite.com

Five projects: Elite, Aviator, Revs, Lander, The Sentinel

1,038,891 words of source code commentary

507,016 words of deep dives

All Shakespeare's plays? 835,997 words

Or as the Bard himself may have written, if he were into 6502 assembly:

LDA #&2B
STA temp
EOR #&FF
ORA temp
STA question

I think that works? 😀

#retrocomputing #bbcmicro #c64 #8bit

bbcelite.com
10
2
4
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

New release: deep dives #37 to #40 for The Sentinel, Geoff Crammond's epic #BBCMicro game

This batch (#8) is a small release, covering the title screens, energy icons and scanner

https://thesentinel.bbcelite.com/deep_dives

Batch #9 is still in the oven, coming soon

Enjoy!

#retrocomputing #c64 #8bit

universeodon.com
8
0
2
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

Time for some more deep dives into The Sentinel, Geoff Crammond's epic #BBCMicro game!

Batch #6 is now ready: 3 new articles about screen buffers, panning, scrolling and dithering

https://thesentinel.bbcelite.com/deep_dives

Batch #7 (drawing the landscape) coming soon

Enjoy!

#retrocomputing #c64 #8bit

universeodon.com
9
0
4
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago

Time for my last batch of deep dives into The Sentinel, Geoff Crammond's epic #BBCMicro game.

This one's a mixed bunch of miscellaneous topics, from anti-cracker code to hidden snippets of original source code. Short and sweet!

https://thesentinel.bbcelite.com/deep_dives

Enjoy…

universeodon.com
7
2
3
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

Left image: The Sentinel and four sentries, taken from the landscape preview in the classic game of the same name. Astonishingly, these are not sprites. They are fully rendered 3D objects, using the exact same code as the game.

Right image: a robot, drawn by the same routine.

Micro *and* macro excellence! Very impressive from the same routine.

#retrocomputing #c64 #bbcmicro

universeodon.com
8
0
2
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 8mo ago
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 https://thesentinel.bbcelite.com/ It's going to take a while! But it should be worth it... #retrocomputing #retrogaming #c64 #8bit
thesentinel.bbcelite.com
12
0
4
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 7mo ago

I'm (slowly!) releasing 50+ deep dives into The Sentinel, Geoff Crammond's epic #BBCMicro game

Batch #4 is now ready: 5 new articles about 3D objects (defining, drawing, managing)

https://thesentinel.bbcelite.com/deep_dives

Batch #5 (drawing polygons) coming on Friday

Enjoy!

#retrocomputing #c64 #8bit

universeodon.com
8
0
5
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

Brand new weekend reading: even more deep dives into The Sentinel, Geoff Crammond's #BBCMicro epic

Batch #5 covers the unique equirectangular projection system, drawing filled polygons, the screen mode and more

https://thesentinel.bbcelite.com/deep_dives

Batch #6 soon…

Enjoy!

#retrocomputing #c64 #8bit

universeodon.com
7
3
5
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 7mo ago
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 1024 pseudo-random numbers. Next week I'll be releasing a deep dive into exactly how this works. *** A big thanks to Simon Owen, whose excellent repository I forked and enhanced in order to build this visualisation. It's well worth a visit. https://github.com/simonowen/sentland/ #bbcmicro #retrocomputing #retrogaming #c64 #8bit
github.com
7
0
2
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago

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:

https://thesentinel.bbcelite.com/deep_dives

Batch #11 (last one!) soon

Enjoy!

#retrocomputing #c64 #bbcmicro

thesentinel.bbcelite.com
3
0
1
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to
@cobbpg It’s the built-in assembler in BBC BASIC, which was used to write Elite, Aviator, Revs and The Sentinel (on the BBC Micro) and Lander/Zarch (on the Archimedes). It is a genuinely excellent assembler!
2
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@geoffl@mastodon.me.uk @cs99cjb@hachyderm.io @frontierastro@universeodon.com Ha! Exactly. It’s click-bait, 1984-style. 🤣
1
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@Workshopshed@mastodon.scot @frontierastro@universeodon.com Mostly. 😀
1
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@drj @moonovermarine I do, yes, I posted about this a few weeks ago. Wonderful work! But I don’t think I knew the Mastodon link, so thank you. 😀
1
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@Er_mecanico Time to bust out the Speccy! That’s one amazing conversion by Mike Follin. 👍
1
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@MouseByTheSea@mastodon.gamedev.place Absolutely! This is a hobby, after all. 😀
1
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@MouseByTheSea@mastodon.gamedev.place Thank you! I’m glad you like it. At the moment it’s mainly concentrating on the BBC Micro version, but I’m planning to add the Commodore 64 version too, along with some articles about the differences in the code. I just need to find the time - it’s been a big project, but it’d be nice to broaden its appeal.
1
1
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to
@massimolauria Well, it's not emacs or vim, but it is just a text editor. It's Textastic on my iPad with a custom 6502 syntax colouring. https://www.textasticapp.com/ It's very handy when coding and writing on the sofa. 🙂 On desktop I flip between VSCode and BBEdit, though I disable almost every modern feature, especially anything that tries to be helpful. I can't be doing with any of that auto-complete popup nonsense! The only feature that is absolutely essential to my work is regex search and replace. I like it old school (though not quite emacs or vim!).
textasticapp.com
1
1
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to on mastodon.gamedev.place
@cobbpg@mastodon.gamedev.place Yeah, that’s what the Bitshifters found with their BBC Master conversion - they needed the extra memory in the Master vs the standard Beeb. Squeezing it into the Apple II’s 48K is amazing! And given that 1.5K represents 6.5% of the entire Sentinel codebase, logs were out of the question! Same with Elite: the original BBC versions had algorithmic multiplication, but the C64 and co-pro versions had enough room for the log lookup tables. Seeing how they coded for constraints is one of my favourite aspects of analysing old code. 😀
1
1
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to
@cobbpg Sounds fast! But presumably this approach is a bit more memory hungry? The Sentinel on the BBC Micro doesn't have any spare room at all, so I guess it's lowest common denominator for the core maths routines, which are copied unchanged from Revs. But by Stunt Car Racer he'd dropped the 32K platforms, so logarithms ahoy! Nice. 😀
1
1
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to on bsd.network
@thomasadam@bsd.network Lots of disc games switch to the tape filing system after loading from floppy, so they can reuse the memory that would otherwise be used by the disc filing system. That would mean any *LOAD commands would then try loading from tape, which would appear to break if you were expecting it to load something from disc - not sure if that’s what you mean? Glad you like the writing!
1
2
1
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to
@thomasadam@bsd.network Well, to be fair, this is pretty niche stuff and my Mastodon posts are fairly quiet affairs these days, so it's not that surprising if it slips under the radar. 🙂 I hope you enjoy the project, it's another labour of love!
1
1
1
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 7mo ago
Replying to on mastodon.social
@marksemczyszyn@mastodon.social That’s definitely the plan - I’d like to add the C64 versions of both The Sentinel and Revs to my site, as I did with Elite, and add deep dives on their unique aspects. It’s a bit of a long-term plan as I’ve got to finish the BBC Micro site first, but I bought a lovely original C64 last year and I’d like to celebrate it with a bit more coverage in my projects. Such a great machine!
1
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@cs99cjb@hachyderm.io @frontierastro@universeodon.com It is pretty awful, isn’t it! In some runs it almost seems good, but in others it just gets stuck in a rut following a ship it can’t catch up with, spamming its lasers into empty space while being picked off by random pirates. The extra code isn’t that big, so I guess the algorithm will turn out to be pretty simple. We’ll see!
0
1
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@plumduff69@mastodonapp.uk @frontierastro@universeodon.com Sounds great! Unless this is how SkyNet gets started… 😱
0
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to
@thomasadam Oh, you’re talking about *LIST? *L. Is short for *LOAD, not *LIST, so I didn’t get that from your post. 😀 *LIST just dumps a file’s contents straight to the screen, so if it isn’t a text file, it will cause all sorts of chaos. And if paging is set (by pressing CTRL-N, for example) then that will set it to pause at the end of each page, and if you don’t know that SHIFT is the key to press to keep going, it will appear that the machine has crashed. Lots of potential explanations! Love these machines… 🤣
0
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@MouseByTheSea@mastodon.gamedev.place I can’t argue with that! His code is really something; he’s such a great coder.
0
1
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 6mo ago
Replying to on mastodon.gamedev.place
@ludd@mastodon.gamedev.place My pleasure! Thank you for the kind words. 😀
0
0
0
0
Open post
Mark Moxon @markmoxon@universeodon.com
· 5mo ago
Replying to
@plumduff69 Thank you! That is very kind, I’m glad you like it. 😀 Good luck with the rest of your project - I hope it’s as enjoyable as I’ve found this one!
0
0
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 04:49:04 UTC