stardot / acornbasic128 Goto Github PK
View Code? Open in Web Editor NEWOriginal Source Code for the Acorn BBC Basic 128 (in MASM format)
Original Source Code for the Acorn BBC Basic 128 (in MASM format)
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 disassembly/ - a disassembly of the BBC Basic 128 binary, used to reconstruct the missing Bas10 source file. The disassembly uses BeebDis (and a control file) to generate BeebASM source. The last part of the was manually translated back to MASM. adfs/ - disk images in ADFS (adl and dat) formats; these are generated by the make_disk_images.sh script which uses COEUS's AcornFsUtils package. 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 Basic 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 ADFS: =========== The disk organization on ADFS involves a single disk image containing the tools (MASM), build scripts, source code, and sufficient free space for the build process. In the adfs/ directory are the following versions: AcornBasic128.adl - this is a 640KB interleaved disk image, suitable for writing to a floppy disk. AcornBasic128.dat - this is a 640KB non-interleaved disk image, suitable for using with BeebSCSI (e.g. rename it to scsi0.dat). Transfer one of these disk images onto your physical hardware. To assemble the sources, you just need to boot the disk (it contains an appropriate !BOOT file) The Basic 128 binaries are generated in the X directory (two files): X.Bas128 (this has a MD5SUM of 9e65b6df380914531d574600c0a6ae7d) X.BasObj (this has a MD5SUM of 601f3e505266a3d6eaa7634558c330b9) 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.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.