3 ms·
The Hi-Tech C compiler for CP/M works quite well also, and generates pretty compact code. sdcc can be used to cross-compile for CP/M from a modern PC, if you p
by nineteen999 2y ago
The Hi-Tech C compiler for CP/M works quite well also, and generates pretty compact code.
sdcc can be used to cross-compile for CP/M from a modern PC, if you provide a crt0.rel and libc. I rolled my own and was able to port a few useful programs and utilities with it.
- anthk 2y agoYou might like this: https://t3x.org/t3x/0/index.html https://t3x.org/t3x/0/index.html Pascal like language, compiles at Unix and to DOS and CP/M, it can be run under CP/M too. It can compile both binaries and bytecode. I ran a faithful Ladder port natively under a GNU Unix 386, it's really good: https://t3x.org/t3x/0/programs.html https://t3x.org/t3x/0/programs.html
- nineteen999 2y agoI took a look at T3X a while back, it looked really interesting. Thanks for reminding me. My greatest claim to fame was embedding a Z80 emulator in Unreal Engine, extending it with TCP/IP and VT100 emulation, and being able to connect to BBS's on the internet, and run Rogue, Zork and Wordstar along with most other Z80 CP/M software: https://i.imgur.com/aSc9VGL.png https://i.imgur.com/aSc9VGL.png https://i.imgur.com/dd0Nzo2.png https://i.imgur.com/dd0Nzo2.png https://i.imgur.com/Usjd4Vk.png https://i.imgur.com/Usjd4Vk.png https://i.imgur.com/Y5aIjCi.png https://i.imgur.com/Y5aIjCi.png https://i.imgur.com/rIY1he8.png https://i.imgur.com/rIY1he8.png (yes I know color CP437/ANSI graphics was not a thing on 8080/Z80 CP/M. But it was not difficult to make it work and it looks pretty in Unreal).
- stevekemp 2y agoI haven't gotten round to trying the Hi-Tech compiler yet, primarily because it won't run under my emulator. I just added a couple of missing syscalls but the only output I see is "Out of memory". (Removing the "-v" flag causes it to generate some submit files, with $$$ suffix, but I don't yet support those in my CCP.) I'll try it on real hardware next week and if it works there I guess that'll be another fun bug to hunt down!
- nineteen999 2y agoI didn't bother with emulating CP/M itself, just the Z80 CPU+RAM and disk interface, which I made compatible with Udo Munk's z80pack. I was able to use the stock z80pack BIOS/BDOS so I didn't have any issue getting it to run. You are going deep!
- stevekemp 2y agoYeah I'm doing things the hard way, for sure! But the project grew little by little, and I'm enjoying the process. (And it has to be said one of the reasons I'm interested is because I have a Z80-based single-board computer which runs CP/M natively which helps for testing things.)