BBC Disasm

18 Sep 2023
by ignat

First need install Go lang:

https://github.com/golang/go

https://go.dev/doc/install/source

 

$ git clone https://go.googlesource.com/go goroot
$ cd goroot
$ git checkout release-branch.go1.17
$ cd src
$ ./all.bash

For install Go lang need copy files to /usr/lib/go and to /usr/share/go

Some system need :

export PATH="~/tmp/goroot/bin:$PATH"
export GOPATH=~/tmp/goroot


Next install bbcdasm:


cd ../..

$ git clone https://github.com/chriskillpack/bbcdisasm
$ cd bbcdisasm/
$ go install ./cmd/bbcdisasm
$ bbcdisasm list images/Elite.ssd

Disk Title E L I T E
Num Files 5
Num Sectors 800
Boot Option 3
Disk Cycle 0x0

Filename Length LoadAddr ExecAddr Sector
README 00E9 0003FFFF 0003FFFF 110
ELTcode 50E8 00031128 00031128 29
ELTdata 1532 00031100 00032000 7
ELITE 03E6 00031900 00038023 3
!Boot 0014 00000000 0003FFFF 2

 

$ bbcdisasm disasm –loadaddr 0x3000 ELTcode 0x1A10 > ELTcode.asm

$ xa ELTcode.acm -v -bt 1536

$ beebasm -i ELTcode.asm -v > ELTcode.txt

 

Extra links:

https://stardot.org.uk/forums/viewtopic.php?t=23155

https://retrocomputingforum.com/t/a-new-fully-annotated-disassembly-of-elite-bbc-micro-versions/1406

https://stardot.org.uk/forums/viewtopic.php?f=2&t=20488

https://tobylobster.github.io/mos/

 
Minecraft Edu © 2024