[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]
On Tue, 3 Sep 2024, Dom (shymega) Rodriguez wrote:
Hi all, Long time since I've posted here. I've become interested in 16-bit/8-bit computing. DOS and CP/M are my main reasons, but I wanted to try and write a basic, bare-metal program on a 16-bit or 8-bit CPU - or both! I was wondering if anyone had any pointers? Ideally I'd prefer to run the program on real hardware, not an emulator - although I'm not against it. There's a Z80 board at Pi Hut, but I think I'd prefer 16-bit. I remember Gordon has the Ruby 6502 project - that's part of my inspiration. But I'm just curious if one can buy 16-bit || 8-bit boards these days.
There was very little proper 16-bit stuff "back in the day". The TI-99 was about the only true 16-bit home system available. Basically everything else jumped from 8 bit to 32-bit.
Both Acorn and Apple dabbled with the 65C816 (Which is on my current Ruby board) this is a hybrid 16-bit CPU with an 8-bit memory interface and a PITA to write efficient code for. Acorn developed ARM and Apple moved to 68000. (Although some people regarded the 68K as a 16-bit system as it used as 16-bit wide memory interface, but internally it has 32-bit registers.
There is one other 16-bit CPU that people often overlook and that's the Intel 8086. There are a few hobby level projects using it. 16-bit memory interface and 16-bit registers.
The issue with these 16-bitters is that you always want more RAM - the 65816 has a 24-bit address bus but only has 16-bit wide index registers, so you end up with banks of 64KB (or KW) of RAM and weird programming tricks to allow user programs to address more than 64K at a time..
Currently my Ruby project is mostly Acorn compatible in 8-bit mode and in 16-bit mode ... it gets over the 64K bank shenanigans by interpreting a bytecode for a 32-bit virtual machine which runs a multi-tasking operating system which I wrote in BCPL. (and have subsequently ported to RISC-V, and ARM32 - as a bare metal OS on a Pi v1).
Buying stuff - there are several 6502 (8-bit) projects based on the Pi Pico chip now. In the z80 world search for RC2014 but these are all 8-bit
based systems.If you want minimal, I'm looking to put together some kits of my "Project-28" system which is a 6507 with just 4K of RAM and 4K of ROM which runs my own TinyBasic... What can you do in 4KB? :-)
https://unicorn.drogon.net/IMG_20231220_193620_DRO.jpg https://unicorn.drogon.net/IMG_20231222_221107_DRO.jpgAlso toying with the idea of kits of my Ruby816 system too, but not sure I can be bothered.
-Gordon -- The Mailing List for the Devon & Cornwall LUG FAQ: https://www.dcglug.org.uk/faq/