Coder Social home page Coder Social logo

acorn_dfs_2.45_disassembly's Introduction

This repo is redundant

For general DFS stuff, please see Greg Cook's disassembly of DFS 2.24, which has comments and labels and bug fixes and everything: http://regregex.bbcmicro.net/dfs224.asm.txt

For DFS 2.45 specifically, my modification of Greg's disassembly may be of interest: https://github.com/tom-seddon/acorn_1770_dfs_disassembly - builds 2.24, 2.25, 2.26, 2.29 and 2.45 from one source file. There's no useful commentary that isn't already in Greg's version though!


Extremely barebones disassembly of Acorn DFS 2.45.

Main goal of this mini project: get some confidence about how the ROM is laid out, as this has some relevance to my Master MOS disassembly.

The results:

Region Purpose
$8000-$aeff DFS 2.45
$af00-$b7ff MOS 3.50
$b800-$bfff ADFS 2.03 disk code

Significant debt due to Greg Cook's disassembly of DFS 2.24: http://regregex.bbcmicro.net/dfs224.asm.txt - the two ROMs are very similar and this saved a good bit of time when it came to identifying the tables.

(Unfortunately, they're not similar enough to build both from a single readable source file.)

build

Builds on Windows, macOS and Linux.

Prerequisites (Windows/macOS/Linux):

  • Python 3.x

For Windows, prebuilt binaries of the additional prerequisites are supplied in the repo; for macOS and Linux, you'll need to install them yourself:

  • 64tass (I use r3120)
  • GNU Make

git clone

This repo has submodules. Clone it with --recursive:

git clone --recursive https://github.com/tom-seddon/acorn_dfs_2.45_disassembly

Alternatively, if you already cloned it non-recursively, you can do the following from inside the working copy:

git submodule init
git submodule update

(The code won't build without fiddling around if you download one of the archive files from GitHub - a GitHub limitation. It's easiest to clone it as above.)

build steps

Run make from the root of the working copy.

The build process is supposed to be silent when there are no errors and when the output matches the original ROMs. Some versions of make might print a load of stuff about entering and leaving the directory.

build output

The build output is four ROMs:

  • build/dfs245.rom - DFS 2.45 ROM, identical to MOS 3.50 ROM bank 9
  • build/dfs245.truncated.rom - just the DFS 2.45 code, $8000-$aeff, to ensure it assembles standalone
  • build/dfs245.rev1191.rom DFS 2.45 ROM with later copyright date, as discussed in this thread: https://stardot.org.uk/forums/viewtopic.php?t=19103 (search for rev1191 in the source to see the differences)
  • build/dfs245.rev1191.truncated.rom - just the DFS 2.45 rev 1191 code, $8000-$aeff, to ensure it assembles standalone

The corresponding original ROMs can be found in the orig folder.

acorn_dfs_2.45_disassembly's People

Contributors

tom-seddon avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.