G'day again, the micromation is haunting me......
I have a uart attached to a doubler card, that uses only 2 addresses to work. The hardware takes care of the control, so I only need to read FE0AH to get the Status registers, and either read or write to FE02H to send receie data. I have tried moding a simple monitor source, which compiles on its own address's, but when i change the code to address the above ports, it complies but the outputted file is corrupt and missing the end.
Here is some sample code:
CONOUT: PUSH AF ; push AF into stack
LD A,(0FE0AH) ; Read from Control Port
AND 04H ; logical AND transmit ready 01h or 00000001 bin
JP Z,CONOUT+1 ; jump to address
POP AF ; POP FROM THE STACK BACK TO AF
LD (0FE02H),A ; write to port A
RET ; Return
as i said, if I compile it says all okay, but HEX file is corrupt. If I compile original with low address, it works. If i try to use IN or out with the high address ranges it gives me
Z80ASM Copyright (C) 1983-86 by SLR Systems Rel. 1.32 #AB1234
JADOR/H
JADOR.Z80 - Byte Out of Range Line 01375 IN A,(KBDST)JADOR.Z80 - Byte Out of Range Line 01382
CONIN: IN A,(KBDST)End of file Pass 1
2 Error(s) Detected.
1984 Absolute Bytes. 161 Symbols Detected.
Any help appreciated......
I have a uart attached to a doubler card, that uses only 2 addresses to work. The hardware takes care of the control, so I only need to read FE0AH to get the Status registers, and either read or write to FE02H to send receie data. I have tried moding a simple monitor source, which compiles on its own address's, but when i change the code to address the above ports, it complies but the outputted file is corrupt and missing the end.
Here is some sample code:
CONOUT: PUSH AF ; push AF into stack
LD A,(0FE0AH) ; Read from Control Port
AND 04H ; logical AND transmit ready 01h or 00000001 bin
JP Z,CONOUT+1 ; jump to address
POP AF ; POP FROM THE STACK BACK TO AF
LD (0FE02H),A ; write to port A
RET ; Return
as i said, if I compile it says all okay, but HEX file is corrupt. If I compile original with low address, it works. If i try to use IN or out with the high address ranges it gives me
Z80ASM Copyright (C) 1983-86 by SLR Systems Rel. 1.32 #AB1234
JADOR/H
JADOR.Z80 - Byte Out of Range Line 01375 IN A,(KBDST)JADOR.Z80 - Byte Out of Range Line 01382
CONIN: IN A,(KBDST)End of file Pass 1
2 Error(s) Detected.
1984 Absolute Bytes. 161 Symbols Detected.
Any help appreciated......