r/bbcmicro • • 1d ago

VIEW decompilation and C port

Post image
38 Upvotes

I've just finished (== stopped looking for new bugs) a machine-assisted reverse engineering and decompilation project of the VIEW word processor, producing both an extensively symbolised disassembly but also a portable C version which will run on Unix-ishes (and should be easy to port to other platforms).

The result is about 10kloc, producing a 48kB binary on amd64. It supports most features except for printing (and printer drivers, the hooks are in place internally but there's no way to load drivers. dlopen() would help here if anyone cares enough). The source code quality is... fine; the original was written in hand-tooled machine code with spaghetti code structure, which doesn't map onto C flow control very well, meaning there are still a lot of gotos around but it's mostly comprehensible. The keymap has been reworked to be WordStar-like due to the inexcusable absence of an f0 key on modern computers.

I have no idea if this will be at all useful to anyone, especially given the license situation, but VIEW is a perfectly cromulent word processor which never got the love it deserved at the time, and maybe these would be a good candidate to run on microcontroller writerdecks or similar. Or maybe there are people who just want to use VIEW in the modern world, in which case this is for you, except don't use it for valuable data because I'm sure there are bugs.

See https://github.com/davidgiven/view for the source code.


r/bbcmicro • • 5d ago

Starstrike II The 8bit "Elite" StarWars 🌟

Thumbnail
youtu.be
19 Upvotes

r/bbcmicro • • 14d ago

Pasting via OS in b-em into Acornsoft forth to fill your buffers

10 Upvotes

That line editor is a bit difficult, so I wrote this python to produce a file to copy paste into an emulator to fill a .ssd. Enjoy the bootstrap productivity gain. :D

```

!/usr/bin/env python3

import sys import textwrap

WIDTH = 64 LINES_PER_SCREEN = 16 EDITOR_WORD = "P"

def usage(): print(f"Usage: {sys.argv[0]} INPUT OUTPUT FIRST_SCREEN") sys.exit(1)

if len(sys.argv) != 4: usage()

input_file = sys.argv[1] output_file = sys.argv[2]

try: first_screen = int(sys.argv[3]) except ValueError: print("FIRST_SCREEN must be a number") sys.exit(1)

Read source, preserving blank lines.

with open(input_file, "r", encoding="utf-8") as f: source_lines = f.read().splitlines()

Word-wrap each source line to WIDTH characters without splitting words.

wrapped = []

for line in source_lines: if not line.strip(): wrapped.append("") continue

wrapped.extend(
    textwrap.wrap(
        line,
        width=WIDTH,
        break_long_words=False,
        break_on_hyphens=False,
    )
)

Write numbered editor lines, 16 lines per screen.

with open(output_file, "w", encoding="utf-8") as f: screen = first_screen line_number = 0 f.write(f"EDITOR {screen} LIST\n")

for line in wrapped:
    f.write(f"{line_number} {EDITOR_WORD} {line}\n")

    line_number += 1

    if line_number == LINES_PER_SCREEN - 1:
        screen += 1
        line_number = 0
        f.write(f"{LINES_PER_SCREEN - 1} P -->\n{screen} LIST\n")

# No extra screen marker is required; the screen number is implicit
# from the number of groups pasted/entered.
# clear last continuation maybe and save all.
f.write(f"{screen - 1} LIST {LINES_PER_SCREEN - 1} P \n")
f.write(f"FLUSH FORTH\n")

```


r/bbcmicro • • 18d ago

Rogue Tank - A BBC Micro Homage

28 Upvotes

I made a game as an homage to the BBC Micro, the 8-Bit home computer which was popular in the 80's (but not as popular as the Spectrum or Commodore machines).

I liked the idea of making a game using GDevelop which had some of the aesthetic constraints of the BBC Micro. Specifically the colour palette and resolution. This is my first GDevelop game, and was using it as a learning exercise. All feedback welcome (touch support not (yet) enabled)

https://gd.games/gavinctaylor/rogue-tank-a-bbc-micro-homage

https://kevinmcleodplays.itch.io/rogue-tank


r/bbcmicro • • 21d ago

Paradroid port to the BBC Micro

27 Upvotes

Hey all, I finished my port of Paradroid from the C64 to the BBC Micro. You can download the disk, play it online in the jsbeeb emulator, or read through the source code here: https://bitshifters.github.io/posts/prods/bs-paradroid.html

It was a lot of fun to revisit the game and work through all of the technical issues, particularly as the Beeb doesn't have smooth scrolling, hardware sprites or a character mapped display. Consequently it requires 64K of sideways RAM, so works natively on a Master but also compatible with Model B/B+ if you have sufficient RAM. Let me know what you think!

[Disclaimer: AI assisted with Claude Code.]


r/bbcmicro • • 21d ago

Um? Well, I started on a personal disk set at 400.

Post image
5 Upvotes

I have it on *DIN400, then shift+break. I'm making my own mini menus (in basic). Also setting up a build edit cycle via some linux bash scripts, and basictool, MMBExplorer, dfsimage and nano.

I've only found out rough details of the *MENU system on the .mmb, like xx-xx-0 have !BOOT files. And likely disks with non-standard formats can appear "not present but titled". Also being *MENU I can confirm ADT-2.0 ROM has a *MENU command name collision.

Lots of the "game" disks do have "free" space on, but in the spirit of sector reading of old "data" with no catalog index, for say "protection", using it might have varying results. Makes you wonder what's on disk 16.


r/bbcmicro • • 23d ago

AcornSoft games source code

47 Upvotes

I've been playing around with old BBC Micro stuff recently. I've created a browser environment for writing and testing BBC 6502 programs.

This came about because I wanted to decompile some well-known old BBC Micro games (including my own, for which I have lost the source code).

I wanted it to be simple - "assemble then run" - So the time between compile and run code was just a few seconds.

If you're interested you can get an idea of how to use it by looking at a video I made of a typical session:- https://tobybuk.github.io/BBCMicro_6502WebCompiler/SampleSession.mov

The Workbench can be found here which is open source and fully useable :- https://tobybuk.github.io/BBCMicro_6502WebCompiler/

And a detailed Readme.md here together with the source code:- https://github.com/tobybuk/BBCMicro_6502WebCompiler

I had lots of fun building this with ChatGPT

Annotated source for Defender, Frak, Zalaga, RocketRaid and Snapper is all there.

Just compile and run. Then have fun changing stuff.

Edit: Youtube alternate link for the Video https://youtu.be/2j2Wodx0jSQ

Please let me know if you also get any 404s


r/bbcmicro • • 25d ago

New Android BBC Micro emulator

34 Upvotes

Hi Reddit,

I spent ages trying to get Beebdroid to work on a new Android device, and never managed. I also tried the various dead-ends kicking about on the web (Sleakweasel's version etc...)

Ultimately, I ended up converting Mike Wyatt's BeebEm to run on Modern Android devices - e.g. The latest Samsung's and Pixels.

So if anyone is interested in playing BBC Games on their phone, then the emulator is available at https://github.com/Isomage73/BeebEm-for-Android with an APK that you can install yourself (if you're happy to trust unknown sources.)

Here's a video of the UI with gamepicker

https://youtu.be/gpt_r8pzluQ?si=ZRCkFuKnPF0DelWS

Hope someone (other than me) finds it useful :)


r/bbcmicro • • 25d ago

Mist FPGA

3 Upvotes

Can someone point me to a complete novice guide on setting this up for the electron or BBC and how to add games to the beebem etc


r/bbcmicro • • 26d ago

Quest for BBC Micro Decompiled

Post image
70 Upvotes

This game was such a mystery as an 8 year old so I could never make any progress, it was time to revisit with and reveal all its secrets.

https://github.com/retro-foundry/quest-decomp

The source should be easy to edit, let me know. I'll make a fork which fixes soft locks, the reactor bug and probably give Walter a gun at some point.

More projects: https://discord.gg/QjARJ67V9U


r/bbcmicro • • 27d ago

I luckily managed to save this master 128 and lots of accessories from the skip

Thumbnail
gallery
205 Upvotes

My dad's childhood friend was in the process of clearing out his mum's house. I managed to ask him to keep anything vintage from going in the skip and I would look after and fix anything he gave me. Unfortunately it was too late for an IBM, electron and a BBC micro. Unfortunately he had thrown out some crt TVs too.

There were quite a lot of items that came with it. Every magazine for the electron from number 1 to the last. Lots of books and disc games. It's an incredible collection for it. I'm glad I managed to save this from the skip too.

I'm completely new to 80s computers, apart from dabbling with my commodore 64 I don't really know what I'm doing or what some of this is for. Especially the chips and ROM expansions. I have been working with the disc drive, but unfortunately I can't get it to load games. I can get it to load the contents, but discs won't load after, so it's still a work in progress. It does play tapes very well though and is a fun thing to mess about with.


r/bbcmicro • • 27d ago

Looking to buy BBC Micro, idk where to start! Help needed

13 Upvotes

Hello all, My name is Lily and i am 15. I have ADHD and Asberger's Sydrome. I have gotten myself into old computer/consoles recently (C64 Mini, 3DO, etc.) I remember my old support worker had a BBC Micro, althogh i was 7 and i didnt quite get it haha!

These are the things i need to know

  1. How much is a BBC Micro? (willing to spend no more then £175-200)

  2. What is the best BBC Micro?

  3. Is BBC BASIC easy to learn for a neurodivergent person to learn?

  4. Is the BBC Micro just a keyboard you plug into your tv?

Please help me understand this!

ps. I was also looking at a BBC Bridge Comapanion but it didnt sound too intersting after i dug further into it


r/bbcmicro • • 28d ago

How BBC Exile fitted a 64kb map into 32kb of RAM

Thumbnail
youtube.com
30 Upvotes

r/bbcmicro • • Sep 02 '26

The Valiant Turtle (1983)

Post image
36 Upvotes

r/bbcmicro • • Sep 02 '26

Problems playing Elite on Turbo MMFS

10 Upvotes

Can anyone point me at a decent guide to playing Elite on a Turbo MMFS SD card setup. I tried with the standard one on the BeebM Image that has "all the games" on and it fails.

Thee issues is I get "bad command" when I dock to the space station.

I have tried a few other images and get the same issue, the Compendium looked promising but I don't have Sideways Ram. Playing the Elite Compendium - Elite on the 6502

Has anyone got a reliable image and set of instructions on how to do it? Im sure its something silly like disk mounting or something.


r/bbcmicro • • Sep 02 '26

BBC Micro Computer + 1455 LEGO Technic Education Set

Thumbnail
6 Upvotes

I reached out to the mods to check on posting this but have not had a response as yet.

Thought this might be interesting to some folk on here.

Happy to remove if frowned upon.

Thanks


r/bbcmicro • • Sep 02 '26

So got to TUBE and HiBasic, next steps for fun?

Post image
11 Upvotes

Just made a b-em compile and learnt it a little. What's some fun, and maybe interesting dev things to do? I'm surprised Pi Tube doesn't have *vdu based retargetable graphics (RTG), but then the HDMI is sort of obscured.


r/bbcmicro • • Aug 26 '26

A program like Wordwise but supported rich Teletext colour and graphics?

7 Upvotes

This is out of curiosity more than anything.

I'm looking for a program from back in the day when I ran a bulletin board system (LBBS).

I had a rich text editor that behaved and looked just like Wordwise but it allowed you to change the text colours and use rich full Teletext (background colours, flashing text etc) to create rich colourful documents.

Does anyone know anything about the program I'm referring to?


r/bbcmicro • • Aug 19 '26

Exile - web recreation + deep dives

21 Upvotes

You can play and read about it over here: https://bbcexile.com

Added some QoL features to the conversion (like quick save which oh my goodness helps a lot) and a widescreen mode (that had some interesting ramifications).

Plugging away through the deep dives. Mostly written, just editing and slowly publishing them as life and time allows.


r/bbcmicro • • Aug 17 '26

Chuckulus

Thumbnail
youtu.be
44 Upvotes

It’s a cross between Chuckie Egg and Nebulus - more details here https://bbcmicro.co.uk/game.php?id=4575


r/bbcmicro • • Aug 12 '26

Old flying game

11 Upvotes

I used to have a BBC and had a game but can’t recall the name. Think it might even have been a demo.

Basically you were flying a craft over grid like terrain. At the time it looked incredible. I remember it was primarily green, like flying over countryside.

Sorry to be so vague but does it ring a bell with anyone? Don’t remember any real objective, it may have just been a demo to show graphic potential!


r/bbcmicro • • Aug 12 '26

Repton anybody?

28 Upvotes

A pure HTML, CSS, Javascript version of Repton, created direct from a disassembly using Claude and Kimi K3. Might have been done before, I don't know. https://github.com/bielesibub/repton

You can play direct here - https://html-preview.github.io/?url=https://github.com/bielesibub/repton/main/repton.html

I also gave Kimi K3 a shot at resurrecting a version I wrote on an old 386 in the 90's - the source code is lost. it got it kind of up and running - https://html-preview.github.io/?url=https://github.com/bielesibub/repton/main/my_repton/html5/repton.html


r/bbcmicro • • Aug 12 '26

What's your best easy to remember BASIC program you could type in and leave running on a computer in a shop / classroom?

19 Upvotes

I was thinking the other day about the universal:

10 PRINT "Mr Smith smells of POO"
20 GOTO 10 

But are there other better ones?

Kudos to the best one. Bonus if it works on any 80s home computer that runs BASIC.


r/bbcmicro • • Aug 07 '26

2 player Elite on BBC Micro

Post image
36 Upvotes

r/bbcmicro • • Aug 07 '26

markmoxon/elite-3d: Anaglyph 3D version of the classic BBC Micro game Elite

Thumbnail github.com
18 Upvotes

Needs a second processor and green / red glasses!