News for hackers. Stuff that matters.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by whartung on Tuesday February 28, 2023 @10:07PM (#34978284)
CP/M is popular because its requirements are dirt simple, and it has a lot of software that still runs. It's popular because, unlike IBM PCs, the hardware was diverse, and the software has to cope with that. Now, while MS-DOS is very CP/M-esque in its design, the truth is that most MS-DOS software is actually PC software. It assumes the PC hardware. Most major MS-DOS applications skipped the MS-DOS driver part and just went straight into the hardware. Today that means if you want an "MS-DOS" machine, you really need a PC with all of its hardware, its graphics, its ports in the right place, etc.

In contrast to CP/M. It requires a block device of some kind (i.e. a disk drive), and a console of some kind (typically, but not necessarily, a serial terminal).

While some applications did route around the BIOS and BDOS in CP/M, most did not. CP/M was quite portable across a crazy range of hardware. Porting a CP/M BIOS is a nice engineering and assembly language challenge for anyone willing to take it on, depending on their hardware environment.

Today, anyone with a Z80 chip, a RAM chip, and some paperclips to wire it all together can get a device that will run Wordstar. That flexibility makes CP/M very popular with retro enthusiasts today. It's easy to find dongle sized computers for $50 running CP/M on eBay. It's also easy to find full through hole kits of parts and PC boards to make your own. Or, grab a Z80 CPU and Peripheral manual, a copy of KiCad, some parts and breadboards and go to town. Having your creating run Wordstar beats blinking LEDs any day of the week.

Re:LokiOS. A new version of CP/M 2.2, written from Scratch by nineteen999 on Tuesday February 28, 2023 @10:42PM (#34978509)
> Porting a CP/M BIOS is a nice engineering and assembly language challenge for anyone willing to take it on, depending on their hardware environment.

In my case I decided the hardware environment was going to be hosted inside Unreal Engine:

https://i.imgur.com/5MDfwKg.png

It's crazy easy to get CP/M running on just about anything with Z80 CPU emulation, and some glue logic to handle reading bytes from a keyboard I/O port, and sending them to a terminal, and reading/writing sectors from a block device. I had to write a VT100 emulator for UE4 but that doesn't take too much work.

WordStar:

https://i.imgur.com/rIY1he8.png

A telnet client (complete with ZMODEM) for accessing BBS's on the Internet:

https://i.imgur.com/aSc9VGL.png

Zork I and Rogue:

https://i.imgur.com/gnOCp3e.png

Re:LokiOS. A new version of CP/M 2.2, written from Scratch by cbm-vic-20 on Wednesday March 01, 2023 @12:23AM (#34979066)
This is great! Reminds me of Notch's post Minecraft game that never got off the ground, 0x10c.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by nineteen999 on Wednesday March 01, 2023 @02:56AM (#34979850)
It was very much inspired by that, yes.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by accrual on Wednesday March 01, 2023 @01:54AM (#34979512)
Extremely cool. It'd be fun to play with machines from this era in VR and have them exist with huge glass terminals like this. It makes them feel so immense compared to what they actually were (small tabletop computers).
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by nineteen999 on Wednesday March 01, 2023 @02:58AM (#34979858)
I'd love to go back and work on it more, I wanted to have both Z80/6502 based systems, just like the 8-bit wars of the 80's, but with networking. I couldn't decide between "1980's in space" or a post apocalyptic world where only 8-bit computers were robust enough to function. Maybe one day.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by kjs3 on Wednesday March 01, 2023 @07:48AM (#34981774)
For me, Turbo Pascal was always the killer app for CP/M, though Wordstar & VisiCalc are probably more important overall.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by fentonc on Wednesday March 01, 2023 @07:58AM (#34981853)
I still play around with Turbo Pascal on CP/M a lot for fun - it is a shockingly good development environment (even on a 4 MHz CPU my edit/compile/debug loop is usually <10 seconds, which is pretty fast even by modern standards). And it could all trivially fit in the L1 cache of a modern CPU.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by nineteen999 on Wednesday March 01, 2023 @02:52PM (#34987383)
I haven't tested Turbo Pascal on it, since i'm not a Pascal programmer, but the HiTech-C compiler runs and creates working executables, its not a stretch that Turbo Pascal would either.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by kjs3 on Wednesday March 01, 2023 @10:00PM (#34991375)
Ummm...why would there be any doubt Turbo Pascal can create working executables?
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by nineteen999 on Thursday March 02, 2023 @05:18PM (#35002874)
Why would there be an assumption I have implemented all the emulation completely and correctly enough for it to run?

If it doesn't, there's a bug in my emulator, end of story. I have had to implement all kinds of things to make various software work correctly, and there's probably still more to do.

Re:LokiOS. A new version of CP/M 2.2, written from Scratch by kjs3 on Thursday March 02, 2023 @06:54PM (#35003782)
Why would you assume I'm talking about your emulator. I just said I liked Turbo Pascal.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by nineteen999 on Monday March 13, 2023 @10:56PM (#35146803)
Oh. I see. I was talking about in the context of my UE4 Z80 emulator, the top post in this thread :-) no biggie.
Re:LokiOS. A new version of CP/M 2.2, written from Scratch by userbinator on Wednesday March 01, 2023 @12:50AM (#34979208)
In contrast to CP/M. It requires a block device of some kind (i.e. a disk drive), and a console of some kind (typically, but not necessarily, a serial terminal).

In other words, it was like the UNIX of the microcomputer world.