[HN Gopher] Ask HN: Are impressive new programs being written fo...
___________________________________________________________________
Ask HN: Are impressive new programs being written for CP/M?
If yes, what are they?
Author : wideareanetwork
Score : 35 points
Date : 2021-04-30 09:53 UTC (1 days ago)
| zabzonk wrote:
| 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.
| nickt wrote:
| Lighthouse of Doom from earlier this week:
|
| https://news.ycombinator.com/item?id=26946130
| Zilcho wrote:
| yes, that made me just want to run out and get one when I read
| that earlier. It has four rooms...
| ChuckMcM wrote:
| 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.
| jstanley wrote:
| > 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.
| wk_end wrote:
| OP, I'm super curious as to what inspired you to ask.
| andyjohnson0 wrote:
| Me too. This is a supremely HN ask.
| wideareanetwork wrote:
| I'm planning to write a text based social network for vintage
| computing enthusiasts, for CP/M. It'll be written in Turbo
| Pascal.
|
| It's my path to $2B.
|
| Don't tell anyone my idea.
| throwaway81523 wrote:
| That sounds kind of cool, but although the binaries of Turbo
| Pascal are now downloadable from Borland's successor at no
| charge, the source code was never released. That makes the
| proposition less interesting than it would otherwise be. BDS
| C source code was released into the public domain a few years
| ago, so that might be an alternative. Or you could use
| MSDOS/FreeDOS that would give you a lot more flexibility
| while staying a similar text-based spirit.
| Zilcho wrote:
| Write a windows like gui for it, and follow the path dos took
| upwards.
| wideareanetwork wrote:
| 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?
| VLM wrote:
| Large number of boards from
|
| https://smallcomputercentral.wordpress.com/
| fred256 wrote:
| There are a few others on Tindie, e.g. this one:
| https://www.tindie.com/products/tindiescx/sc131-pocket-sized...
| superflit wrote:
| OP.
|
| Are you time traveling?
|
| That would be official only later...
| Splognosticus wrote:
| Probably not if he's wanting CP/M. Time travelers prefer APL.
| the_only_law wrote:
| I wouldn't imagine anything besides little personal projects by
| retro enthusiasts with a machine running CP/M. Speaking of which
| I should fine me one.
| wk_end wrote:
| There doesn't seem to be much nostalgia for CP/M either. Most
| people working on retro projects are more interested in banging
| bits than working with an antiquated OS.
| tyingq wrote:
| There's a fair amount CP/M love on Tindie:
| https://www.tindie.com/search/?q=cp%2Fm
| retrac wrote:
| There are no doubt some systems still running under emulation
| doing the same thing as they were 40 years ago. The software
| might even be maintained. But the truth for decades now. CP/M is
| dead. Long live CP/M!
|
| It's just hobbyists now. One hacker ported his game to a Kaypro
| under CP/M a couple years ago:
| http://www.chrisfenton.com/dd9-kaypro-edition/
|
| Much of the focus is on porting CP/M to whatever new or old Z80
| system someone has built or found. Speaking of which... CP/Mish
| is an attempt to bring all the free software CP/M tools together.
| It is to CP/M as Linux is to UNIX, or FreeDOS is to MS-DOS. A
| mostly complete, improved, libre reimplementation:
| https://github.com/davidgiven/cpmish
|
| RunCPM is a CP/M Z80 virtual machine under modern OSes for
| development etc. https://github.com/MockbaTheBorg/RunCPM
|
| In terms of recent new programs, here are some pointers if you
| wanted to write something yourself:
|
| Also written by the maintainer of the CP/Mish project (and not
| CP/M specific) is Cowgol. Alpha quality. But it's a self-hosted
| Pascal/Ada-like language with compiler. Runs on 8-bit systems, at
| least theoretically. It is written, of course, entirely in
| Cowgol: https://github.com/davidgiven/cowgol
|
| Millfork is another new language which targets CP/M systems,
| among others. It's a whole-program optimizing cross-compiler for
| a language somewhat lower level than C, with properties that make
| it very nice to compile for 8-bit systems like no recursion, and
| no automatic promotion to 16-bit integers in type handling:
| https://github.com/KarolS/millfork
|
| There's some work on a Z80 target for FreePascal. I don't think
| there's CP/M specific support, so there's a project idea:
| https://wiki.freepascal.org/Z80
|
| SDCC supports the platform with C surprisingly well. I wouldn't
| call it rock-solid but compared to the above toys it is an
| industrial quality compiler for the Z80. In fact, C seems to be
| the most common actual language for hobbyist and the little
| remaining serious Z80 development, probably ahead of assembly. If
| it just reads and writes the terminal and can fit in about 60 KB,
| then a port is probably straightforward.
| selimthegrim wrote:
| Even TI runs a Z80 emulator on its calculators these days.
| Zilcho wrote:
| The plan is to put it on the z80 computer you built.
| https://archive.org/details/BuildYourOwnZ80ComputerSteveCiar...
| Animats wrote:
| 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.
| sloaken wrote:
| The lack of network support and thus no backdoor is one of the
| reasons I love SQLite.
| csdreamer7 wrote:
| 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.
| guerrilla wrote:
| I would think the hardest part would be knowing what NIC to
| target, otherwise it's just a matter of work.
| slim wrote:
| 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
| jstanley wrote:
| 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.
| sloaken wrote:
| Wow that is really impressive. I had thought CP/M had passed
| away years ago.
___________________________________________________________________
(page generated 2021-05-01 23:01 UTC)