D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

[LUG]Re: 16-bit computing.

 

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.jpg

Also 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/