6502 CP/M: 1/14

preview_player
Показать описание
In whch yr hmbl svt ports Digital Research's seminal 1977 operating system CP/M to the 6502 processor, on camera!

This is initially aimed at the BBC Micro, simply because it makes development and debugging easy, but it's intended to be portable, with the Commodore 64 as a (very slow) secondary target. Binaries are relocated at load-time so to avoid depending on any particular memory layout; this is necessary due to the much less standardised 6502 memory maps.

Рекомендации по теме
Комментарии
Автор

Oh wow, good for you! I did an awful lot with CP/M-80, CP/M-86, MP/M and CCP/M back in the late 70's and early 80's. How incredibly fun you porting it. Super cool!

jumpstar
Автор

Nice to see CP/M make it to the 6502. Back in the day (late 80s) at my first job we worked on both ports to Z80, 8086, and 68000. We also did MP/M for Z80, and that was entertaining. I hope others take up the CP/M 6502 implementation and get some software running on it. Best wishes and thank you for these long form videos. I am always keen to see them and catch the next episode. Great coding!

chipmonkey
Автор

Fun fact: CP/M 3 replaced the reader and punch functions with aux functions that also include a status call. So on CP/M 3, there are terminal programs that don't do direct hardware access

TSteffi
Автор

on the C64, you can move the screen RAM around (but only a bit, not arbitrarily) ... 0400h is just the default location

Darkstar
Автор

I think most of the missing system calls were added in CP/M 3.

pnadk
Автор

Great work! Maybe one day someone can indeed make some software to run on it ;)

GeorgeFoot
Автор

What about using the 6502 copro with its 64k?

reinoud
Автор

Actually there is cp/m for 6502, based on 8080 Simulator for the 6502 written in 1978 Roßmöller created cp/m emulator that works on c64 :)

zzmaj
Автор

What keyboard do you use? Sounds so good

tomavin
Автор

This is funny, I have/had similar idea, while writing a software based Z80 emulator for 65xx CPUs (I write "65xx" since 65816 also interests me, and my main focus now is MEGA65), so in theory it can (well, will be able to ...) run original CP/M but emulating Z80 in software is slow. So my idea was to write a CP/M like OS in native 65xx assembly, and use my Z80 emulation code only to run the actual Z80 apps which can interact BDOS/CBIOS written for real natively. So I can have huge amount of already existing CP/M programs to be able to run then, but the emulated nature of CP/M wouldn't make it _very_ slow at least for file operations etc, when time spent in BDOS or BIOS and not executing the user program ... Well, technically 8080 is already enough for more traditional CP/M programs, but anyway, Z80 would be the goal.

Автор

Or use it as a rom image? Gives an extra 16k

reinoud
Автор

Awesome! Are C64 Disk images available for it?

yorgle