CP/M MACRO ASSEM 2.0 #001 SBOOT - SERIAL BOOT FOR APE VERSION 1.0 TITLE 'SBOOT - SERIAL BOOT FOR APE VERSION 1.0' ; ; SERIAL FOR USE WITH ALTAIR PERIPHERAL EMULATOR ; VERSION 1.0 08-MAR-08, 04-APR-08 SSM 2P+2S ; ; ASSEMBLY TIME FLAGS ; ; EQUATES FOR THE AY-3-1015 UART ; 0001 = RXRDY EQU 1 ;RECEIVER READY FLAG 0080 = TXRDY EQU 080H ;TRANSMITTER READY FLAG ; 0000 = SIO0 EQU 0 ;STATUS PORTS FOR PORTS A & B 0002 = SIO1 EQU 2 ; ; ALTAIR PERIPHERAL EMULATOR EQUATES ; 0002 = APESIO EQU SIO1 ;APE SERIAL PORT (UC1:) ; 0100 ORG 0100H ;START IN PAGE 1 ; 0100 210000 SBOOT: LXI H,0 ;[H,L]=>LOAD ADDRESS 0103 0E80 MVI C,080H ;[C]=LOAD COUNTER ; 0105 DB02 APEIN: IN APESIO ;CHARACTER FROM APE? 0107 E601 ANI RXRDY 0109 CA0501 JZ APEIN ;NO - TRY AGAIN 010C DB03 IN APESIO+1 ;YES - SAVE IT 010E 77 MOV M,A 010F 23 INX H ;INCREMENT LOAD ADDRESS 0110 0D DCR C ;DECREMENT LOAD COUNT 0111 C20501 JNZ APEIN ;DONE? NO - CONTINUE ; 0114 C30000 JMP 0 ;START COLDBOOT LOADER AT 0 ; 0117 END SBOOT