Hi everyone,
Apologies if that has been asked or answered elsewhere, but I've search the interweb, skim-read a couple of CP/M books and can't find a concise answer to my question.
I've recently built a single-board computer running CP/M 2.2 on a Z80, mostly as an education in digital electronics but also as an excuse to learn Z80 assembly. What I'd really like to do right now is write my own CP/M programs. I have SLR Z80ASM on the system (which can compile straight to COM file) and the usual software for CP/M 2.2, along with TASM that I'm using on the PC to assemble the monitor ROM program etc, so these are both at my disposal.
What I really need though is a brief overview of what is required to write a basic program that I can run as a file in CP/M. My understanding so far is that the code should start at 0100h, the start of the TPA. But that's about the limit of my knowledge. I know there are routines that can be called in BDOS and CPM, but I'm not sure what is available, where it is and what its requirements are.
So, really, an example of a CP/M 'Hello World!' program would be ideal - as would any links to reference material or suggestions where I could look myself for this sort of info.
Any help would be appreciated!
Thanks :D
Apologies if that has been asked or answered elsewhere, but I've search the interweb, skim-read a couple of CP/M books and can't find a concise answer to my question.
I've recently built a single-board computer running CP/M 2.2 on a Z80, mostly as an education in digital electronics but also as an excuse to learn Z80 assembly. What I'd really like to do right now is write my own CP/M programs. I have SLR Z80ASM on the system (which can compile straight to COM file) and the usual software for CP/M 2.2, along with TASM that I'm using on the PC to assemble the monitor ROM program etc, so these are both at my disposal.
What I really need though is a brief overview of what is required to write a basic program that I can run as a file in CP/M. My understanding so far is that the code should start at 0100h, the start of the TPA. But that's about the limit of my knowledge. I know there are routines that can be called in BDOS and CPM, but I'm not sure what is available, where it is and what its requirements are.
So, really, an example of a CP/M 'Hello World!' program would be ideal - as would any links to reference material or suggestions where I could look myself for this sort of info.
Any help would be appreciated!
Thanks :D