Home › Forums › Z80 Playground Early-Adopters › An alternative CP/M method
- This topic has 56 replies, 4 voices, and was last updated 11 months ago by
Steve.
-
AuthorPosts
-
June 12, 2021 at 4:40 am #840
Steve
ParticipantHi All
I came across this sites’ Videos whilst browsing YouTube a month or so ago. They reignited my love for the Zed 🙂 80 and CP/M. I dusted off my home made Veroboard project from a number of years ago to see if I could get 8bitStack’s CP/M working with my setup. I had to find a supplier first though for a CH367S module.The Module arrived a few days later. It didn’t take me long to port the software over and I had CP/M working. BUT…..
The implementation is missing some BIOS functionality around the disk system. I could not run any disk examination tools, like ZAP for example, nor could I install my favoured Z-System, NZCOM.
Now, over a decade ago (how time fly’s), I, for the fun of it, ported CP/M to various PICs, culminating in my final build for PIC32MZ’s. This is a 200MHz MCU which is running a Z80 emulation at an equivalent Z80 clock of 80MHz lol. It runs CP/M 2.2, CP/M Plus and even MP/M.
Anyway, my thought was to implement the same file structure for my Z80 project. To cut a long story short, two days later I can not get reads to work with the CH367S module. My Module is a version 0x41 which by all accounts has some defects. Odd though that 8bitStack’s software seems to work. So, what with this problem and endless reliability issues I am encountering with the Kynar wiring, I looked on Ebay this morning (Saturday 12th June 2021) for a used Z80 Playground (as this site says everything is out of stock!), and would you believe, there were six built kits available. Five left at time of writing ;).
“An alternative CP/M method”
When my assembled Z80 Playground arrives, I will continue to play with my method. If anyone is interested, post your comments and I’ll let you know how it turns out.Have fun everyone and stay safe!
June 12, 2021 at 12:19 pm #841Phil_G
ModeratorHi Steve, you’ll love the Playground, I much prefer it over the Z80MBC2 simply because of its FAT support and the ease of copying files to & from a PC. Grants method is clever but so inconvenient and faffy.
Johns playground BIOS doesnt support low-level functions that dont really relate to FAT but any well-behaved CP/M software runs fine on through BDOS calls alone, which of course was always good CP/M development practise.
There are some very minor, non-critical omissions but John still has the software in development – though as a heavy user (I have six CP/M machines including 3 Playgrounds) I’m more than happy with it just as it is!
Whilst FAT support is to me THE huge advantage of the Playground, I’ll be following your developments with a keen interest 🙂
Your PIC32 implementation sounds great, I’ve a Geoff Graham PIC32 ‘Maximite’ system here on my bench, big PIC fan though mostly the midrange. Do please keep us informed! 🙂
Cheers
PhilJune 12, 2021 at 8:14 pm #844john
KeymasterThe long-term plan is to add a CPM-CLASSIC that is simply cp/m 2.2 implemented at the BIOS level, so that you will then have the choice of CPM-FAT (for those who like the FAT-compatibility) and CPM-CLASSIC for those who like the BIOS compatibility. Well, that’s the plan!
June 13, 2021 at 8:43 am #845Phil_G
ModeratorWhen the I/O boards arrive, assuming they’re ok, I’ll add lst: & maybe a bit-banged pun: 🙂
June 15, 2021 at 3:34 am #852Steve
ParticipantI have a real CP/M 2.2 running now but my Veroboard platform is VERY unstable. Eagerly awaiting the Z80 Playground to arrive 🙂
@John, if you are interested/curious in what I have done, let me know. I’m working on the file transfer at the moment.June 15, 2021 at 9:13 am #853Phil_G
ModeratorAre you using the GS bios (or a variant of it) Steve?
June 16, 2021 at 5:13 am #863Steve
ParticipantWhat’s a GS BIOS? I am running with my customised BIOS for the playground.
Oh – My Playground arrived yesterday – very happy! @John, you’ve made a nice product there.It took me a few hours to get my BIOS working on the Playground, but I now have a working real BIOS running CP/M 2.2. I need to write some code to enable file transfers though – may take some time.
June 16, 2021 at 7:14 am #864john
KeymasterI’ll definitely help you with this if you want help, because it was always my plan to do this anyway. Will you be making it open-source?
June 16, 2021 at 7:39 am #865Steve
ParticipantHi John – yes of course it will be open source! I don’t think anything can be copyrighted. Caldera own CP/M and I believe they allow an open source licence. I will put everything on Github once I’m happy.
June 16, 2021 at 7:50 am #866john
KeymasterYou are right though, you need a tool to get files into and out of CP/M, due to the lack of FAT compatibility. In a similar project I did before, I made a CP/M command called IMPORT and EXPORT that transfers in the two directions.
June 17, 2021 at 3:05 am #871Steve
ParticipantWhat I have in mind is to have a transfer directory on the Memory Stick which holds any CP/M file that you want to transfer to CP/M. Than a CP/M utility needs writing to “Import” the files. Maybe, what you have done already will work
June 17, 2021 at 6:06 am #872john
KeymasterThat sounds like a good plan. The IMPORT command could bring in all the files it finds in the Import directory, put them on the current CP/M drive, then delete the originals.
EXPORT would have to take a file name (or wild-card) and send that file (or files) to an Export folder, over-writing any file of the same name that is already there.
I was thinking that /CPM/Import and CPM/Export would be good.
Also, I was thinking of naming this version of CP/M “cpm-classic” to distinguish it from “cpm-fat”, but feel free to call it what you like!!!
Put simply I just can’t find the time for the projects near the top of my list, and cpm-classic is probably nearer the bottom, so although I would love to produce it, I doubt I’ll get round to it any time soon. But I would like to follow your progress, and help out if I can.
Are you thinking of developing under CP/M, i.e. in a CP/M assembler, or cross-assembling from Windows/Linux?
June 17, 2021 at 6:31 am #873Steve
ParticipantI develop on Windows; so much easier 🙂
I have to upload my binaries to my PIC32 CP/M platform – it has Xmodem as a nice way to import files. I then remove the SDCARD and copy the disk image to the Z80 Playground’s USB Memory Stick. So a hassle at the moment lol!I’m using /CPM/TFER at the moment, but of course that can be changed. Once I’m happy with how things work, I’ll hand it to you to play with
June 27, 2021 at 3:40 pm #934June 28, 2021 at 8:31 am #940 -
AuthorPosts
- You must be logged in to reply to this topic.