Skip to content

Original Source Code for the Acorn BBC Basic 128 (in MASM format)

Notifications You must be signed in to change notification settings

BigEd/AcornBasic128

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction
============

This repository contains the original source code for Acorn BBC Basic
128 version 1.11.

The structure of the repository is as follows:

    original_sources.zip

              - a copy of the original BBC Basic 128 source files,
                with the original <cr> line endings, and with the
                original (but broken) broken version of Bas10

    dfs/      - disk images in DFS (ssd and dsd) formats;
                these are generated by the make_disk_images.sh script
                which uses SWEH's Perl mmb_utils.

    src/      - the BBC Basic 128 source files (with various build fixes,
                including the reconstruction of Bas10 from a disassembly).

    tools/    - binaries for MASM (both DFS and non-DFS versions)

Assembling the OS Source Code
=============================

An "ordinary" 6502 Co Processor is needed to assemble the BBC Basic
128 sources.

The source code is in Acorn MASM format, and a copy of the "Normal"
version of MASM is included in the disk images.

Using DFS:
==========

(or MMFS)

The disk organization on DFS involves two disk images:
- drive 0: Tools (MASM) and Working files
- drive 2: BBC Basic 128 sources

In the dfs/ directory are following versions:

Two seperate single sided disk images:
    ssd/AcornBas128_disk0.ssd
    ssd/AcornBas128_disk2.ssd

One double-sided disk image:
    dsd/AcornBas128_disk02.dsd

Transfer one of these disk image sets onto your physical hardware.

To assemble the sources, you just need to boot disk 0 (it contains an
appropriate !BOOT file)

The Basic 128 binaries are generated on DRIVE 0 (two files):

$.Bas128
    (this has a MD5SUM of 9e65b6df380914531d574600c0a6ae7d)
$.BasObj
    (this has a MD5SUM of 601f3e505266a3d6eaa7634558c330b9)

Note: This version (1.11) is later than the commonly available version
(1.10); the differences are very minor:

33c33
< 00000200  6f 66 74 20 31 39 38 35  2c 20 56 31 2e 31 30 00  |oft 1985, V1.10.|
---
> 00000200  6f 66 74 20 31 39 38 35  2c 20 56 31 2e 31 31 00  |oft 1985, V1.11.|
866c866
< 00003610  85 2d 20 60 7a a0 00 a6  38 f0 0c 20 9d 7e d9 00  |.- `z...8.. .~..|
---
> 00003610  85 2d 20 60 7a a0 00 a6  38 f0 0c 20 a1 7e d9 00  |.- `z...8.. .~..|

This is a 1-byte change to code in INSTR, presumably fixing a rare bug
as INSTR is not obviously broken in 1.10.

Acknowledgements:
=================

Many thanks to Paul Fellows (ex Acornsoft) for discovering these
long-lost sources and making them available to the Acorn community.

About

Original Source Code for the Acorn BBC Basic 128 (in MASM format)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%