Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jblang/bbcbasic-z80
R.T. Russell's BBC BASIC for Z80, with additional features by J.B. Langston
https://github.com/jblang/bbcbasic-z80
basic bbc-basic cpm programming-language rc2014 tms9918 tms9918a z80
Last synced: about 2 months ago
JSON representation
R.T. Russell's BBC BASIC for Z80, with additional features by J.B. Langston
- Host: GitHub
- URL: https://github.com/jblang/bbcbasic-z80
- Owner: jblang
- License: zlib
- Created: 2020-02-08T04:23:52.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-06-21T22:58:06.000Z (7 months ago)
- Last Synced: 2024-06-22T13:40:49.048Z (6 months ago)
- Topics: basic, bbc-basic, cpm, programming-language, rc2014, tms9918, tms9918a, z80
- Language: Assembly
- Homepage: http://www.rtrussell.co.uk/bbcbasic/z80basic.html
- Size: 24.4 KB
- Stars: 42
- Watchers: 12
- Forks: 15
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# BBC BASIC+ for Z80
This is modified source code based on [BBC BASIC (Z80)](http://www.bbcbasic.co.uk/bbcbasic/z80basic.html) by R.T. Russell, who [kindly agreed](http://cowlark.com/2019-06-14-bbcbasic-opensource/index.html) to release the original sources under the [zlib](COPYING) license at the request of David Given. David published the sources as part of his [cpmish](https://github.com/davidgiven/cpmish) project.
The original sources released by R.T. Russell are in the initial commit. I have made the following modifications:
- Modified sources to assemble with [z88dk](https://github.com/z88dk/z88dk)'s z80asm
- Fixed a [bug](https://github.com/davidgiven/cpmish/issues/20) that causes the RUN command to hang under emulators.
- Moved hardware-specific functions from patch.asm to hardware.asm.
- Implemented CLS, TAB, and COLOUR using ANSI escape codes
- Added a Makefile and this READMEPlanned modifications:
- Graphics support for the TMS9918A video chip for use with my [video card](https://github.com/jblang/TMS9918A/) for the RC2014.
- Sound support for my SN76489 sound card and/or Ed Brindley's YM2149 sound card
- Joystick support for my Game Controller board supporting ColecoVision, Sega, and Atari controllers.
- Back port additional functionality from modern BBC BASIC.## Build Instructions
Download and install [z88dk](https://github.com/z88dk/z88dk) (compile if necessary). Make sure z88dk's `bin` directory containing `z80asm` is in your path.
Run `make` to build bbcbasic.com.
If make is not available, run:
```
z80asm -obbcbasic.com -b -d -l -m main.asm exec.asm eval.asm fpp.asm hardware.asm cpm.asm ram.asm
```