Live data from Hacker News

Ask HN: Are impressive new programs being written for CP/M?

news.ycombinator.com

21–30 of 34 posts

Re: Ask HN: Are impressive new programs being written for CP/M?

#21

Related question: What “new” CP/M machines can be bought today? The closest I know is this kit: https://rc2014.co.uk/ Any others that can be bought off the shelf today?

There are a few others on Tindie, e.g. this one: https://www.tindie.com/products/tindiescx/sc131-pocket-sized...

Re: Ask HN: Are impressive new programs being written for CP/M?

#22
I wrote a web server for CP/M a couple of years ago: https://github.com/jes/cpmhttpd and https://incoherency.co.uk/blog/stories/rc2014-web-server.htm... and a demo video https://www.youtube.com/watch?v=E3hSGMdmdxc

Since CP/M has no networking support, this also includes implementing TCP/IP inside the web server program, although I only did an extremely superficial job of this: just enough to make it look like it works under normal circumstances. (For example, it has no mechanism to retransmit dropped packets, at least partly because because my machine has no RTC so it has no idea how much time is passing).

It connects to the Internet via SLIP over a serial port to a nearby Linux machine.

It briefly hosted a little web page about my RC2014 and the web server program, but it's too much hassle to keep it running, so it's not up at the moment.

Re: Ask HN: Are impressive new programs being written for CP/M?

#23
Generally no, in the sense that it takes a bit to impress someone these days.

For me (when I used CP/M as a daily driver) MINCE (for MINCE is not completely EMACS :-)) was pretty damn impressive. And you have to understand that the Z80 was less powerful than an Arduino ATMega328.

So a better question is "why hasn't someone built a system out of an Arduino that can self host compilers, editors, file systems, and allows you to do code development on a serial terminal or a "PC console" like device? It is entirely doable, it won't be "quick" of course.

Re: Ask HN: Are impressive new programs being written for CP/M?

#24

Generally no, in the sense that it takes a bit to impress someone these days. For me (when I used CP/M as a daily driver) MINCE (for MINCE is not completely EMACS :-)) was pretty damn impressive. And you have to understand that the Z80 was less powerful than an Arduino ATMega328. So a better question is "why hasn't someone built a system out of an Arduino that can self host compilers, editors, file systems, and allow…

> why hasn't someone built a system out of an Arduino that can self host compilers, editors, file systems, and allows you to do code development on a serial terminal or a "PC console" like device?

Mainly because Arduinos only have 2K of RAM. You could certainly connect up extra RAM chips to the digital I/O pins, but I'm not convinced there is any way to ask the ATmega328 to use this as extra memory, and even if there is you wouldn't have a lot of pins left over for doing anything else with.

Re: Ask HN: Are impressive new programs being written for CP/M?

#26
post #14

Probably not. But FreeDOS lives on. Modern toolchains can compile to FreeDOS executables. FreeDOS is useful when you want a computer to run one program and nothing else. You can be confident that there's no backdoor network connection because there's no networking support in the OS.

I wonder how feasible it would be for malware to inject networking support into FreeDOS? Drivers, a TCP/IP stack, not very familiar with how DOS is constructed compared to my studies on the modern Linux kernel.

It's trivial. There's an opensource tcp/ip stack for dos. I used to use it back in 98 to connect to the internet with my 386sx

Re: Ask HN: Are impressive new programs being written for CP/M?

#27
Probably not, probably because the software development tools on CP/M were far inferior to those on later OSs, such as Windows, UNIX, et al. For example, I'm not aware of a C++ compiler available for CP/M, or a VCS.

Having said that, I've written a ton of software on CP/M and enjoyed doing it - at the time. I wouldn't want to do it now.

Re: Ask HN: Are impressive new programs being written for CP/M?

#28

I wrote a web server for CP/M a couple of years ago: https://github.com/jes/cpmhttpd and https://incoherency.co.uk/blog/stories/rc2014-web-server.htm... and a demo video https://www.youtube.com/watch?v=E3hSGMdmdxc Since CP/M has no networking support, this also includes implementing TCP/IP inside the web server program, although I only did an extremely superficial job of this: just enough to make it look like it work…

Wow that is really impressive. I had thought CP/M had passed away years ago.

Re: Ask HN: Are impressive new programs being written for CP/M?

#29
post #14

Probably not. But FreeDOS lives on. Modern toolchains can compile to FreeDOS executables. FreeDOS is useful when you want a computer to run one program and nothing else. You can be confident that there's no backdoor network connection because there's no networking support in the OS.

The lack of network support and thus no backdoor is one of the reasons I love SQLite.

Re: Ask HN: Are impressive new programs being written for CP/M?

#30

Generally no, in the sense that it takes a bit to impress someone these days. For me (when I used CP/M as a daily driver) MINCE (for MINCE is not completely EMACS :-)) was pretty damn impressive. And you have to understand that the Z80 was less powerful than an Arduino ATMega328. So a better question is "why hasn't someone built a system out of an Arduino that can self host compilers, editors, file systems, and allow…

> why hasn't someone built a system out of an Arduino that can self host compilers, editors, file systems, and allows you to do code development on a serial terminal or a "PC console" like device? Mainly because Arduinos only have 2K of RAM. You could certainly connect up extra RAM chips to the digital I/O pins, but I'm not convinced there is any way to ask the ATmega328 to use this as extra memory, and even if there…

I give you the BASIC Stamp[1] a BASIC environment on a chip with 25 BYTES of RAM. And the SPI RAM chip[2] (8 megabytes off a SPI port).

I built a simple PDP-11/20 emulator (not cycle accurate) that used the Atmega chip and a couple of FRAMs for 'core'. At 16MHz it ran faster than the PDP-11/20 did when it was built, and the 11/20 ran RT-11.

Basically this is a detailed way of saying that perhaps you perceive limitations where I see opportunities :-)

[1] https://www.parallax.com/product/basic-stamp-1-interpreter-c...

[2] https://www.mouser.com/ProductDetail/AP-Memory/APS6404L-3SQR...

Post reply on HN