Micro­power

  

Volume 1 · Number 3 · November 1981

Page 13 of 33
0CD030F90570JR NC, LP1A; LOOP IF NO CLOCK
0CD2DB040580IN A, (04); JUST CHECKING
0CD4EEFF0590XOR £FF
0CD61F0600RRA
0CD730F20610JR NC, LP1A; TRANSIENT, LOOK AGAIN
0620; **********************************************************
0CD906810630LD B, £81; USE £3C FOR 2 Mhz
0640; **********************************************************
0CDB10FE0650LP2DJNZ LP2; DELAY AND WAIT
0CDD000660NOP; BEFORE LOOKING
0CDE000670NOP FOR DATA PULSE
0CDF000680
0690; ***********************************************************
0CE0063D0700LD B, £3D; USE £1D FOR 2 mHZ
0710; ***********************************************************
0CE2000720LP3NOP; IN SEARCH WINDOW
0CE3DB040730IN A, (04); READ PORT
0CE5EEFF0740XOR £FF; INVERT IT
0CE71F0750RRA; ROTATE TO CARRY
0CE838040760JR C, GOT; PULSE FOUND – CHECK
0CEA10F60770DJNZ LP3; NO PULSE, LOOK AGAIN
0CEC181C0780JR NOGOT; WINDOW EXPIRED
0CEEDB040790GOTIN A, (4); CHECK AGAIN
0CF0EEFF0800XOR £FF
0CF21F0810RRA; ROTATE TO CARRY
0CF338040820JR C, GOTONE; DEFINATELY A 1
0CF510EB0830DJNZ LP3; TRANSIENT – TRY AGAIN
0CF718110840JR NOGOT; STILL IN WINDOW?
0CF9F10850GOTONEPOP AF; RETORE REGS
0CFA000860ENDNOP; TO END WINDOW
0CFB000870NOP; USING NOP AS DELAY
0CFC000880NOP
0CFD000890NOP
0CFE000900NOP
0CFF000910NOP
0D00000920NOP
0D01000930NOP
0D0210F60940DJNZ END; STILL IN WINDOW?
0D04C10950POP BC; END – RESTORE REGS
0D05070960RLCA; SHIFT ACCUMULATOR
0D06CB870970RES 0, A; ZERO AND
0D083C0980INC A; SET BIT 0 TO 1
0D09C90990RET; RETURN
0D0AF11000NOGOTPOP AF; NO DATA PULSE
0D0BC11010POP BC; RESTORE REGS.
0D0C071020RLCA
0D0DCB871030RES 0, A; SET BIT 0 TO 0
0D0FC91040RET; RETURN
1050;
1060; PROGRAM TO CONVERT TOKENS FROM TRS-80
1070; TO Nascom. ALSO SETS UP POINTERS AND
1080; CORRECT LINE ADDRESS CODES BY SUB-
1090; TRACTING £31EF (OR £594C FOR DISC)
1100;
0D10E51110TOKENPUSH HL
0D1121FA101120LD HL, £10FA; THROW AWAY SSSn
Page 13 of 33