I have what I expect is actually a simple problem, but it is defeating me.
I have a simple assembler program (hellow.asm)
; Hello world in Z80 Assembly for CP/M
BDOS equ 05h
WRTLINE equ 09h
;
org 0100h
start: lxi d,sHello
mvi c,WRTLINE
print: call BDOS
finish: ret;
sHello db 'Hello, World!$'
The program, quite obviously, writes "Hello, World!" to the console.
My problem is that debuggers are documented as loading a program in at 100h, but mostly this loads in at 200h, but the symbols are based at 100h. I usually do RMAC Hellow, followed by LINK Hellow.
I have tried SID,ZSID, DDT, Z8E and DEBUGZ and usually same problem, loading at 200h; however I did somehow on several occasions without realising how manage build and correctly load at 100h.
If I use ASM to create a hex file and then ddt hellow.hex then it does correctly load in at 100h.
What is the secret of getting a linked com file to load in at 100h?
And I thought CP/M was supposed to be simple :)
Richard
(p.s. you can tell I am addicted to computers because I put 512g flour in the bread machine :) )