drcjt / CSharp-80

C# AOT compiler for Z80 based computers including the TRS-80 and ZX Spectrum
https://drcjt.github.io/CSharp-80/
GNU General Public License v3.0
51 stars 3 forks source link

NABU PC support #298

Open GryBsh opened 1 year ago

GryBsh commented 1 year ago

NABU PC graphics support would be pretty cool :) It's a Z80 machine, similar to the MSX, and can run CPM 2.2 and 3.

GryBsh commented 1 year ago

And it's HCCA RS422 serial port, it's used pretty extensively.

drcjt commented 1 year ago

If it runs a Z80 then it shouldn't be too difficult to support.

It will require addition of some assembly code in the Runtime folder in the ILCompiler project, see the existing folders for CPM, TRS80 and ZXSpectrum. The C# class library will need some additions too, see the Console.Trs80.cs file for an example.

Apart from seeing the recent interest in NABU PC on the internet I have no familiarity with it. Is there a good emulator for it??

GryBsh commented 1 year ago

It's in mainline MAME, but I would use this build https://gtamp.com/nabu/, it has 80 column support (the F18A is becoming a common add-on for the NABU). To use NABU software, you need an emulator for its network adaptor or to make CPM boot disks and use them in MAME. I made one, but there are several to choose from https://www.nabunetwork.com/resources/github-repositories/

I was looking at the code here, and it looked like the particulars of adding new machine support were not complicated, my Z80 assembly skills are slow and lacking, eventually, I may fumble my way through it :)

drcjt commented 1 year ago

Thanks for the info and links - I'll try and take a look over the next few weeks.