ORG 0 ;--------------------TRANSCEIVER SP3ABG---------------------- ;----------------DIGITAL 931 4 PAZDZIERNIK 92-------------- ;DOPISANIE GALKI - LISTOPAD 93--------------DIGITAL 941------- ;DOPISANIE AM I KANALOW CB - MARZEC 94------DIGITAL 942------- ;PRZEPISANIE NA PC- LISTOPAD 95 ;DOPISANIE DLUGIEJ MAGISTRALI SZEREGOWEGO STEROWANIA, ; DIGITAL 1000--- PA EQU 00B PB EQU 01B PC EQU 10B PS EQU 11B ;IX-wskaznik bkod,IY-uniwersalny ;rejestr I - flagi: ;B0=0-blokada NMI ;B1=1-wykryta zmiana manipulatora podczas generacji znaku ;B2=1-wstrz.odczyt z pamieci przez manipulator lub key ;B3=1-trwa kasowanie pam elb ;B4=1-skaner ;B5=1-ominac transmisje skali ;B6=1-generowac dzwiek ;B7=1-koniec kasowania pam elb FLAGI EQU 8000H ;komunikaty NMI-glowny itp ;B0=1-zapis elb 240 ;B1=1-odczyt elb ;B2=1-przy ostatnim odczycie byla 1 ;B3=0-zaladowac BEL2 ;B4=1-generowac przerwe; -rozkazy dla elb ;B5=1-generowac kropke ;B6=1-generowac dopelnienie kropki do dlugosci kreski ;B7=0-info dla wpisywania przerw ze koniec gener.znaku HIST EQU 8001H ;B0 HIST -wcisniety kl przestr RIT,B1 wyk B164 EQU 8002H ;wskaznik wlaczanej cyfry B094 EQU 8003H ZEG0 EQU 8004H ;dzwiek klaw ZEG1 EQU 8005H ;odliczanie wartosci z BEL ZEG2 EQU 8006H ;wyswietlania ZEG3 EQU 8007H ;opkl ZEG4 EQU 8008H ;VOX ZEG5 EQU 8009H ;odliczanie przerw*BEL2A ZEG6 EQU 800AH ;z ZEG6A-postoj na stacji-skaner ZEG7 EQU 800BH ;odstepy przestrajania skanera ;ADRBCD EQU 800CH;DO 8013H np:00,02,08,09,09,09,01,02 ADRBIN EQU 8014H ;do 8015H np 28999 binarnie BSAA EQU 8016H ;do 8017H- sterujacy SAA1057 KROK EQU 8018H ;do 801B WYNRAH EQU 801CH ;do 801F-wynik liczydla BEL EQU 8020H ;szybkosc elbuga- wartosc 1-36 BEL2 EQU 8021H ;wartosc kropki lub kreski ;BKOD EQU 8022H;do 8029H- wartosci wyswietlania kodu 7-segm 470 WEJSC EQU 803AH ;do 8041H-odwzorowanie wejsc wg pozycji wyswietlania HIST2 EQU 8042H ;szybkiego przestrajania 490 LICZS EQU 8043H ;licznik S-mtra-C/A BSMTR EQU 8044H ;max wartosc z LICZS MIGA EQU 8045H ;miganie przecinkow BPRZEC EQU 8046H ;do 804DH ;bufory przecinkow migajacych ;w nich: B0=1-przecinek staly, b1=1- migajacy ;dwa ostatnie bajty na S-mtr BVOX EQU 804EH ;wartosc opoznienia VOX BPROG EQU 804FH ;do 8053H program res,set,bit elbuga HZMIA EQU 8054H ;ny manipulatora podczas zmiany znaku OPVOX EQU 8055H ;razem z ZEG4 BEL2A EQU 8056H ;odlicz. przerw dla zapisu w pam elb WYNIK EQU 8057H ;do 805A; wynik dodawania lub odejmowania WYNRIT EQU 805BH ;do 805E; wynik dod lub odejm. dla RIT WYNXIT EQU 805FH ;do 8062; wynik dod lub odejm. dla XIT NRBITU EQU 8063H ;do 8064H POROWN EQU 8065H ;do 8066H; porownanie z nr bitu i wysw WYSPE EQU 8067H ;do 8068H; zuzycie pamieci elbug FLAGI2 EQU 8069H ;B0=1-N,0-O ;B1=1-GWB,0-DWB ;B2=1-CW,0-SSB ;B3=1-przestrajanie RIT ;B4=1-przestrajanie XIT 720 ;B5=1-:+ ;B6=1-:- ;B7=1-wykonac inicjacje SAA-petla 10* FLAGI3 EQU 806AH ;B7=1-bylo nadawanie,0-byl odbior - dla przelaczania N/O ;B6 ;B5-zmiana na porcie sztorcowego ;B4=1-jest transmisja SAA ;B3=1-trwa przestrajanie ;B2=1-w prawo B1=1-wyswietl. CB WYNEL EQU 806BH ;do 806EH-wynik liczenia bitow w elb BEL3 EQU 806FH ;licznik pozycji szybkosci elb PASM EQU 8070H ;pasma;port 094 ;B7 -do 9,B6 -miedzy 9a17,B5 -powyzej17, B4-50,B3-144,B2-FMAM ;B1-1=432, B0-G/D,AM/FM ;stos-81FEH do okolo 80B0H PAMF EQU 8200H ;do (8200H+(16*4*3))=82C0H EPAM1 EQU 82C1H ;pamiec elbuga BUPA EQU 8071H ;bufor galki BUPA2 EQU 8072H ;hist galki ILKR EQU 8073H ILKR2 EQU 8074H ;do wymnozenia WKROK EQU 8076H ;do 807DH 950 ZEG6A EQU 807EH HLOGR EQU 807FH ;do 8080H-pomocniczy dla HL PLI EQU 8081H ;do 8088H-CB PRO EQU 8089H ;do 8090H-CB ADRBCD EQU 8091H ;do 8098H BKOD EQU 8099H ;do 8100H ZND1 EQU 8101H ;B0-ARW,B1-1750 ZKF EQU 8102H LD SP,81FEH-12 JP WSTEP ORG 8H IPA IN A,(PA) RET ORG 10H OPC OUT (PC),A RET ORG 18H IPC IN A,(PC) RET ORG 20H LDAF LD A,(FLAGI) RET ORG 28H LDFA LD (FLAGI),A RET DOD CALL KAUS LDOD LD A,(DE) ADC A,(HL) DAA LD (DE),A INC HL INC DE DJNZ LDOD RET ODE CALL KAUS LODE LD A,(DE) SBC A,(HL) DAA LD (DE),A INC HL INC DE DJNZ LODE RET KAUS LD HL,KROK LD DE,WYNRAH LD B,4 AND A RET WKRO2 DEFB 50H,12H,00,00,00,25H,00,00,00,00,01H,00 ORG 38H NINT ORG 66H NNMI EX AF,AF' LD A,I BIT 0,A JP Z,RETURN RES 5,A ;zezwolenie transmisji skali LD I,A EXX CALL ELEKTR LD A,I ;ominiecie az za tra skali BIT 5,A JR NZ,DMI BIT 4,A JR NZ,DNMIQ ;omin. klucza bo skaner LD A,(PASM) BIT 2,A JR NZ,DNMIQ LD HL,FLAGI3 ;klucz RST IPA AND 01000000B BIT 5,(HL) JR Z,DSZT1 SET 7,A DSZT1 CP 10000000B JR Z,DNMIQ CP 01000000B JR Z,DNMIQ CP 11000000B JR Z,DSZT2 SET 5,(HL) LD A,I SET 6,A LD I,A JR DNMIQ DSZT2 RES 5,(HL) ;1900 LD A,I RES 6,A LD I,A DNMIQ DNMI3A DNMI3B LD A,(ZEG0) CP 0 JR Z,DY1 RST IPC XOR 00000010B RST OPC DY1 LD A,(OPVOX) CP 0 JR Z,DMI LD A,(ZEG4) CP 0 JR NZ,DMI LD A,200-100 LD (ZEG4),A LD HL,OPVOX DEC (HL) DMI LD HL,ZEG2 ;skala LD A,I ;omskatra bo operacja na bitach elbuga BIT 5,A JR Z,DNMI3S INC (HL) JR DNMI5 DNMI3S XOR A CP (HL) JR NZ,DNMI5 LD (HL),1 CALL SKATRA DNMI5 PUSH IX POP HL LD DE,WEJSC-BKOD ADD HL,DE IN A,(PA) LD (HL),A DNMI LD A,(FLAGI3) ;S-mtr BIT 4,A JR NZ,DNMI10 IN A,(PA) BIT 0,A JR NZ,DSM1 ;bo transmisja SAA i pasm IN A,(PC) RES 7,A ;2310 OUT (PC),A LD A,(LICZS) LD (BSMTR),A XOR A LD (LICZS),A JR DNMI10 DSM1 IN A,(PC) SET 7,A OUT (PC),A LD A,(LICZS) INC A LD (LICZS),A DNMI10 LD HL,MIGA DEC (HL) LD B,8 LD HL,ZEG0-1 XOR A LOOP INC HL CP (HL) JR Z,DALE DEC (HL) DALE DJNZ LOOP DALY RETUR EXX ;2550 RETURN EX AF,AF' RETN WSTEP RST IPC BIT 0,A JR Z,LSET LD A,10010000B OUT (PS),A LD HL,8000H LD DE,8001H LD BC,81F0H-8000H-12 XOR A LD (HL),A LDIR LD B,8 LD HL,WEJSC LD A,$FF LSET LD (HL),A INC HL DJNZ LSET LD HL,WPROG ;zalad.prog.zmiennego do RAM LD DE,BPROG LD BC,3 ;2790 LDIR LD A,00000010B ;wst 1750 Hz LD (ZND1),A LD A,44 ;12 gr elb LD (BEL),A LD A,25 ;12 gr to 25-ta pozycja LD (BEL3),A LD A,10111111B ;164 LD (B164),A LD A,01000101B LD (B094),A LD A,01100011B ;wstepnie pasma LD (PASM),A LD IY,WYNIK LD (IY+2),37H LD (IY+6),37H LD (IY+10),37H LD HL,BSAA ;inicjacja SAA LD (HL),0 XOR A LD (BSAA+1),A LD A,10000000B ;inicj SAA(petla*10)i wstepne flagi LD (FLAGI2),A CALL TRASAA ;3030 LD A,10011101B ;programSAA LD (BSAA),A LD A,10000001B LD (BSAA+1),A LD A,00001101B ;wst.poz.dz.SAA LD (ADRBIN),A ;=3500 (kHz) LD A,10101100B LD (ADRBIN+1),A LD HL,BSAA CALL TRASAA LD HL,ADRBIN CALL TRASAA LD A,00000001B LD I,A ;odbl. NMI CALL OPKL JR REKL NAPI DEFB 0,0,0,0,0,01111001B,00101100B,10101101B,00101100B DEFB 10111000B,11011101B,10101000B,0,11110101B,11010001B DEFB 01111100B,0,0 DEFB 01101001B,00010000B,10111100B DEFB 10101000B,10111100B,00111000B,10111000B,00011000B DEFB 00111001B,00011001B,00101100B,00111000B,10110101B DEFB 0,00100100B,00101100B,10111100B,10101000B,00111001B ;3270 DEFB 00011001B,11011101B,0,10101101B,00111101B,00011000B DEFB 11011101B,0,10111000B,10111100B,10101010B,0,01111100B DEFB 10111101B,10111101B,01000101B,10110101B,10110101B DEFB 0,11011100B,00111001B,10101000B,11011101B DEFB 00011001B,01111001B REKL LD A,57 ;ilosc znakow + 5 LD HL,NAPI LD DE,BKOD LREKL PUSH AF LD A,(WEJSC+7) ;czy CLR BIT 3,A JR NZ,REKDL3 POP AF JR REKDL4 REKDL3 PUSH HL PUSH DE LD BC,6 LDIR REKDL CALL OPKLB CALL OPKLB REKDL2 POP DE POP HL POP AF INC HL ;3510 DEC A CP 0 JR NZ,LREKL REKDL4 XOR A LD (ILKR),A LD HL,81FFH-12 LD BC,12 LD DE,WYNIK LDIR CALL ODCSTA CALL CZF CALL USTSYN CALL OPKL GLOWNA DGL1 LD A,(WEJSC+5) ;krok 20 Hz BIT 2,A JR NZ,KR100 CALL H20 JR O1 ;3700 KR100 LD A,(WEJSC+4) BIT 2,A JR NZ,KR1K CALL H100 JR O1 KR1K LD A,(WEJSC+5) BIT 3,A JR NZ,KR5K CALL KH1 JR O1 KR5K LD A,(WEJSC+4) BIT 3,A JR NZ,DG2V CALL KH5 O1 CALL OPKL DG2V LD A,(WEJSC+0) ;ustawianie t VOX BIT 3,A JR NZ,DG2B LD A,(BVOX) LD HL,WVOX CALL CML CALL CST LD A,(BPRZEC+6) SET 0,A RES 1,A LD (BPRZEC+6),A CALL OPKL LSV CALL VNKP LD HL,BVOX ;3940 LD A,(WEJSC+3) BIT 2,A JR NZ,SZ1V LD A,15+4 CP (HL) JR Z,SZ2V INC (HL) JR SZ2V SZ1V BIT 3,A JR NZ,SZ3V XOR A CP (HL) JR Z,SZ2V DEC (HL) JR SZ2V SZ3V LD A,(WEJSC+0) BIT 3,A JR NZ,LSV LD HL,BPRZEC+6 RES 0,(HL) LD A,(BVOX) CP 0 JR Z,DG2A SET 1,(HL) ;4180 DG2A CALL OPKL JR DG2B SZ2V LD A,(HL) LD HL,WVOX CALL CML CALL CST LD A,120 CALL OPKL1 JR LSV DG2B CALL SMETR ;S-mtr-obrobka i wyswietlanie D1SM LD A,(PASM) BIT 2,A JR Z,WS111 ;ominiecie skanera LD A,(BPRZEC+3) BIT 0,A JR NZ,WS112 LD A,(BPRZEC+5) BIT 0,A JR NZ,WS112 LD A,(WEJSC+1) BIT 3,A JR NZ,WS2 LD A,I XOR 00010000B ;4420 LD I,A BIT 4,A JR Z,WS22 LD HL,PAMF+168 CALL PRDWA CALL ODCSTA CALL CZF CALL USTSYN WS22 CALL OPKL WS2 LD A,I BIT 4,A JR Z,WS1 LD A,(ZEG6) CP 0 WS112 JR NZ,WS1 RST IPA BIT 6,A JR NZ,ODCZ LD A,(ZEG6A) CP 0 JR Z,DZEG6 DEC A LD (ZEG6A),A LD A,$FF ;4660 LD (ZEG6),A WS111 JR WS1 DZEG6 LD A,35 LD (ZEG6A),A ODCZ LD A,(ZEG7) CP 0 JR NZ,WS1 LD A,50 LD (ZEG7),A LD B,4 LD DE,WYNIK+4 LD HL,PAMF+72+4 LSK DEC DE DEC HL LD A,4 CP B JR NZ,DLSK LD A,(HL) AND 00001111B LD C,A LD A,(DE) CP C JR DLSK2 DLSK LD A,(DE) ;4900 CP (HL) DLSK2 JR C,NASTKR DJNZ LSK LD HL,PAMF+168 CALL PRDWA CALL CZF CALL USTSYN JR WS1 NASTKR CALL LDKR1 CALL DODKR WS1 LD HL,WEJSC+7 ;CLR BIT 3,(HL) JR NZ,DWS1 LD A,10101100B LD (BKOD+6),A LD A,10101000B LD (BKOD+7),A LD A,(HIST) SET 1,A LD (HIST),A CALL OPKL LCLR CALL RXGC LD A,(WEJSC+7) BIT 3,A ;5140 JR Z,DCL3 DCL2 LD A,(WEJSC+6) ;CB BIT 3,A JR NZ,DCL1 LD A,(FLAGI3) XOR %00000010 LD (FLAGI3),A CALL USTSYN DCL3 CALL CLCL DCL1 LD A,(HIST) BIT 1,A JR NZ,LCLR DWS1 LD A,(WEJSC+6) ;ARW BIT 3,A JR NZ,KONSW LD A,(PASM) BIT 2,A ;jesli FM to 1750 Hz JR Z,DARW LD E,A LD A,(FLAGI2) BIT 0,A JR Z,KONSW LD A,E ;5325 XOR %00000010 JR D2WS DARW LD A,(ZND1) XOR %00000001 D5WS LD (ZND1),A CALL RXGC CALL VNKP JR D4WS D2WS LD (PASM),A D3WS CALL USTSYN D4WS CALL OPKL KONSW LD A,(WEJSC+3) ;pamieci f AND %00001100 CP %00001100 JP Z,KONF1A PUSH AF LD A,I RES 4,A LD I,A POP AF BIT 3,A JR NZ,D10FP PUSH AF CALL ZAPST ;5510 LD HL,WYNIK LD DE,PAMF+48+48+48 LD BC,4*3 LDIR CALL CZF POP AF D10FP LD E,A LD A,%00000001 LD (BPRZEC),A CALL OPKL LFPA LD A,(WEJSC+3) BIT 2,A JR NZ,D1FPA XOR A LD (BPRZEC),A LF CALL OPKL JR KONFPA LFPAB D1FPA CALL SMETR LD B,8 LD HL,WEJSC-1 LFP INC HL LD A,5 CP B ;5750 JR NZ,DLF7 LD A,(HL) ;(WEJSC+3) BIT 2,A JR Z,DLFP JR DLF7A DLF7 LD A,(HL) DLF7A LD D,A AND %00001100 CP %00001100 JR NZ,DLFB ;2 DLFP DJNZ LFP JR LFPA DLFB ;E-z lub o, D-jeden z 2 klaw.,B-nr pam f LD A,B BIT 2,D JR Z,DLFB3 ADD A,8 ;nr pamieci wg. klaw DLFB3 DEC A ADD A,A ADD A,A ;*4 LD B,A ADD A,A ;*8 ADD A,B ;*12 LD B,0 LD C,A LD HL,PAMF ADD HL,BC BIT 2,E PUSH DE JR Z,ZAPF ;6060 CALL PRDWA CALL ODCSTA CALL CZF CALL SRX CALL USTSYN JR DLFB4 ZAPF CALL ZAPST EX DE,HL LD BC,4*3 LD HL,WYNIK LDIR CALL CZF DLFB4 CALL OPKL LD A,%00000001 LD (BPRZEC),A DLFB5 POP DE CALL VNKP ;6230 JP LFPAB KONF1A KONFPA CALL WPEL CALL RXGC CALL VNKP GALKA LD A,(ILKR) CP 0 JR Z,DGL77 CP 2 JR C,DGA7 LD A,(FLAGI3) BIT 2,A JR Z,LEWO JR PRAWO DGA7 LD A,(BUPA2) LD E,A LD A,(BUPA) SRL A SRL A AND %00000011 ADD A,E CP %00000001 JR Z,LEWO CP %00000111 ;6470 JR Z,LEWO CP %00001000 JR Z,LEWO CP %00001110 JR Z,LEWO CP %00000010 JR Z,PRAWO CP %00000100 JR Z,PRAWO CP %00001011 JR Z,PRAWO CP %00001101 JR Z,PRAWO JR DGL77 PRAWO LD HL,FLAGI3 SET 3,(HL) SET 2,(HL) CALL SPRSZ CALL DODKR JR DGAL LEWO LD HL,FLAGI3 SET 3,(HL) RES 2,(HL) CALL SPRSZ ;6710 CALL ODEKR DGAL LD HL,FLAGI3 RES 3,(HL) DGL77 JP GLOWNA CLCL XOR A LD (BKOD+6),A LD (BKOD+7),A LD (ILKR),A LD A,(HIST) RES 1,A LD (HIST),A CALL OPKL RET ;6850 WKRO1 DEFB $02,$00,$00,$00,$10,$00,$00,$00 DEFB $00,$01,$00,$00,$00,$05,$00,$00,$00,$00,$01,$00 WKRO10 DEFB 0,$10,0,0,0,$20,0,0 SPRSZ LD A,(ILKR) LD (ILKR2),A CP 8 JR NC,SZYBC ;6950 CALL LDKR1 JR KOSZ SZYBC CALL LDKR2 KOSZ XOR A LD (ILKR),A RET BCDBIN LD DE,ADRBCD+1 LD HL,0 LD B,5 LO1 LD A,(DE) SUB 0 PUSH BC LD C,A LD B,0 ADD HL,BC INC DE POP BC DEC B JR Z,WYNI PUSH DE ADD HL,HL LD E,L LD D,H ;7190 ADD HL,HL ADD HL,HL ADD HL,DE POP DE JR LO1 WYNI LD A,(ADRBCD+1) CP $05 JR NZ,D144 LD A,(PASM) SET 4,A ;50 MHz RES 3,A LD (PASM),A LD BC,44500 SBC HL,BC SRL H RR L LD BC,2750+4 JR DBB2 D144 CP $04 JR NZ,DBB1 LD A,(PASM) RES 4,A SET 3,A ;144 LD (PASM),A ;7430 LD BC,32500 SBC HL,BC SRL H RR L LD BC,5750+3 JR DBB2 DBB1 LD A,(PASM) AND %11100111 LD (PASM),A ;KF LD BC,1005 ;kHz-kor.synt.wg jego p.cz DBB2 ADD HL,BC LD A,H LD (ADRBIN),A LD A,L LD (ADRBIN+1),A RET H20 LD A,%00000001 LD (BPRZEC+4),A XOR A LD (BPRZEC+7),A LD HL,WKRO1 JR CALD H100 LD A,%00000001 ;7670 LD (BPRZEC+7),A XOR A LD (BPRZEC+4),A LD A,(PASM) BIT 2,A JR Z,D100 BIT 0,A JR Z,D100F LD HL,WKRO10 JR CALD D100F LD HL,WKRO2 JR CALD D100 LD HL,WKRO1+4 JR CALD KH1 LD A,%00000010 LD (BPRZEC+4),A XOR A LD (BPRZEC+7),A LD A,(PASM) BIT 2,A JR Z,D1K BIT 0,A ;7910 JR NZ,D1K D2K LD HL,WKRO2+4 JR CALD D1K LD HL,WKRO1+8 JR CALD KH5 LD A,%00000010 LD (BPRZEC+7),A XOR A LD (BPRZEC+4),A LD HL,WKRO1+12 CALD CALL LDKR RET ODCSTA LD A,(WYNIK+3) BIT 7,A JR NZ,UP XOR A JR UP2 UP LD A,1 UP2 LD (BPRZEC+2),A CALL USGD LD A,(WYNIK+3) AND %01100000 ;8150 RLC A RLC A RLC A LD (BPRZEC+1),A CALL DR61 ;UST.EMISJI LD A,(WYNIK+3) BIT 4,A LD A,(FLAGI3) JR Z,RECB SET 1,A JR RECB1 RECB RES 1,A RECB1 LD (FLAGI3),A LD A,(WYNIK+7) AND %11110000 CP %00010000 CALL Z,H20 CP %01000000 CALL Z,H100 CP %00100000 CALL Z,KH1 CP %10000000 CALL Z,KH5 RET ;8390 ZAPST PUSH DE LD A,(WYNIK+7) AND %00001111 LD E,A LD A,(BPRZEC+4) BIT 0,A JR NZ,S20H BIT 1,A JR NZ,S1K LD A,(BPRZEC+7) BIT 0,A JR NZ,S100H S5K LD A,%10000000 JR RZ S20H LD A,%00010000 JR RZ S100H LD A,%01000000 JR RZ S1K LD A,%00100000 RZ ADD A,E LD (WYNIK+7),A LD A,(WYNIK+3) AND %00001111 ;8630 LD E,A LD A,(BPRZEC+1) RRC A RRC A RRC A ADD A,E LD E,A LD A,(BPRZEC+2) BIT 0,A JR Z,DRZ SET 7,E DRZ LD A,(FLAGI3) BIT 1,A JR Z,DRZ1 SET 4,E DRZ1 LD A,E LD (WYNIK+3),A POP DE RET CZF LD A,(WYNIK+3) AND %00001111 LD (WYNIK+3),A LD A,(WYNIK+7) ;8870 AND %00001111 LD (WYNIK+7),A LD A,(WYNIK+11) AND %00001111 LD (WYNIK+11),A RET USGD LD A,(BPRZEC+2) BIT 0,A JR Z,US0 LD A,(FLAGI2) SET 1,A LD (FLAGI2),A LD A,(PASM) RES 0,A LD (PASM),A RET ;9040 US0 LD A,(FLAGI2) RES 1,A LD (FLAGI2),A LD A,(PASM) SET 0,A LD (PASM),A RET ;------------------------------------------------------------ DODKR LD HL,FLAGI2 SET 5,(HL) ;+ JR DAS1 ODEKR LD HL,FLAGI2 SET 6,(HL) ;- DAS1 BIT 3,(HL) JR Z,DAS2 CALL RAHRIT JR DAS7 DAS2 BIT 4,(HL) JR Z,DAS4 CALL RAHXIT JR DAS7 DAS4 CALL RAHRIT CALL RAHXIT CALL RAHF0 DAS7 LD HL,FLAGI2 RES 5,(HL) RES 6,(HL) ;+i-=0 USTSYN LD A,(BPRZEC+5) BIT 0,A ;240 JR NZ,DAS77 ;ustawianie XIT LD HL,FLAGI2 BIT 0,(HL) JR Z,DASO ;ODBIOR DAS77 LD HL,WYNXIT CALL PRZEDW JR DAS8 DASO LD HL,WYNRIT CALL PRZEDW DAS8 CALL ROZS CALL KOD7 LD A,(PASM) ;FM i odb to kor 1.5kHz BIT 2,A JR Z,DNFM LD A,(FLAGI2) BIT 0,A JR NZ,DNFM XOR A LD (KROK),A LD (KROK+1),A JR DFM DNFM LD HL,WKOR LD A,(FLAGI2) AND %00000111 ;480 LD B,0 LD C,A LD A,(PASM) BIT 2,A JR NZ,DXX LD A,(ADRBCD+1) CP $04 JR NZ,DXX LD A,C XOR %00000010 LD C,A DXX ADD HL,BC LD A,(HL) LD (KROK+1),A XOR A LD (KROK),A DFM LD (KROK+2),A LD (KROK+3),A LD A,(ADRBCD+1) CP $04 JR NZ,DAKF CALL DOD ;na 144 odwr wstega JR DAKU DAKF CALL ODE ;720 DAKU CALL ROZS CALL BCDBIN CALL CA ;dla VXO LD HL,ADRBIN RES 7,(HL) CALL TRASAA CALL ZAPST LD HL,WYNIK LD BC,12 LD DE,$81FF-12 LDIR CALL CZF RET RAHRIT LD HL,WYNRIT CALL PRZEDW CALL TESTPM LD DE,WYNRIT CALL PRZEZW RET RAHXIT LD HL,WYNXIT CALL PRZEDW CALL TESTPM ;960 LD DE,WYNXIT CALL PRZEZW RET RAHF0 LD HL,WYNIK CALL PRZEDW CALL TESTPM LD DE,WYNIK CALL PRZEZW RET TESTPM LD A,(ILKR2) LD C,A TEPM LD HL,FLAGI2 BIT 5,(HL) JR NZ,DTE1 CALL ODE JR DTE2 DTE1 CALL DOD DTE2 XOR A CP C RET Z DEC C CP C ;1200 JR NZ,TEPM RET SRX LD HL,BPRZEC+3 LD B,4 LD IY,WYNIK LR1 LD A,(IY) CP (IY+4) JR NZ,JRIT INC IY DJNZ LR1 RES 1,(HL) JR DR1 JRIT SET 1,(HL) DR1 LD HL,BPRZEC+5 LD B,4 LD IY,WYNIK LR2 LD A,(IY) CP (IY+8) JR NZ,JXIT INC IY DJNZ LR2 RES 1,(HL) JR RXI ;1440 JXIT SET 1,(HL) RXI RET RXGC CALL SRX DR3 LD A,I ;RIT BIT 4,A JR NZ,DR4 LD A,(WEJSC+6) BIT 2,A JR NZ,DR444 LD A,(FLAGI2) BIT 4,A JR NZ,DR4 LD A,150 LD (ZEG3),A LD A,(HIST) BIT 0,A RET NZ SET 0,A LD (HIST),A DR445 LD A,(HIST) ;CLR BIT 1,A JR Z,DR44 LD HL,WYNIK ;1680 LD DE,WYNRIT LD BC,4 LDIR CALL USTSYN LD A,(BPRZEC+3) XOR %00000001 RES 1,A LD (BPRZEC+3),A CALL CLCL JR DRC44 DR44 LD A,(BPRZEC+3) XOR %00000001 RES 1,A LD (BPRZEC+3),A DRC44 LD A,(FLAGI2) XOR %00001000 LD (FLAGI2),A RET DR444 LD A,(ZEG3) CP 0 JR NZ,DR4 LD A,(HIST) BIT 0,A JR Z,DR4 ;1920 RES 0,A LD (HIST),A JR DR445 DR4 LD A,I ;XIT BIT 4,A JR NZ,DR5 LD A,(WEJSC+7) BIT 2,A JR NZ,DR5 LD A,(FLAGI2) BIT 3,A JR NZ,DR5 LD A,(HIST) ;CLR BIT 1,A JR Z,DR55 LD HL,WYNIK LD DE,WYNXIT LD BC,4 LDIR LD A,(BPRZEC+5) AND %11111100 LD (BPRZEC+5),A LD A,(FLAGI2) RES 4,A ;2160 LD (FLAGI2),A CALL USTSYN CALL CLCL RET DR55 LD A,(BPRZEC+5) XOR %00000001 RES 1,A LD (BPRZEC+5),A LD A,(FLAGI2) XOR %00010000 LD (FLAGI2),A DR999 JR DR9 ;DP611 DR5 LD A,(WEJSC+1) ;G/DWB BIT 2,A JR NZ,DR6 LD A,(BPRZEC+2) XOR %00000001 LD (BPRZEC+2),A CALL USGD JR DR9 DR6 LD A,(WEJSC) ;CW/SSB/FMAM BIT 2,A RET NZ LD A,(BPRZEC+1) ;2400 INC A LD (BPRZEC+1),A AND %00000011 CP %00000011 JR NZ,DR611 XOR A LD (BPRZEC+1),A DR611 CALL DR61 DP611 JR DR9 DR61 LD A,(BPRZEC+1) CP %00000001 JR Z,DRCW CP 0 JR Z,DRSSB LD A,(FLAGI2) RES 2,A LD (FLAGI2),A LD A,(PASM) SET 2,A LD (PASM),A JR DR91 DRCW LD A,(FLAGI2) SET 2,A ;2640 LD (FLAGI2),A LD A,(PASM) RES 2,A LD (PASM),A JR DR91 DRSSB LD A,(FLAGI2) RES 2,A LD (FLAGI2),A LD A,(PASM) RES 2,A LD (PASM),A DR91 XOR A LD (ZND1),A RET DR9 CALL USTSYN CALL USTSYN DR10 CALL OPKL RET VNKP RST IPA ;VOX,N/O,KLUCZ,PTT BIT 7,A JR NZ,DV1 XOR A ;2870 LD (ZEG4),A LD (OPVOX),A JR NO DV1 LD A,(BVOX) CP 0 JR Z,NO LD A,(FLAGI2) BIT 2,A JR Z,DVSSB LD A,I BIT 6,A JR Z,NO DV5 LD A,(BVOX) ADD A,1 ;VOX OD 0.6 SEK 0.2 LD (OPVOX),A JR NO DVSSB RST IPA BIT 1,A JR Z,DV5 NO RST IPA BIT 7,A LD HL,FLAGI2 JR NZ,DV6 DV8 LD A,(FLAGI3) ;3110 BIT 7,A JR NZ,DV88 SET 7,A LD (FLAGI3),A SET 0,(HL) CALL USTSYN JR WYJKNO DV88 SET 0,(HL) JR WYJKNO DV6 LD A,(OPVOX) CP 0 JR NZ,DV8 RES 0,(HL) WYJKNO LD A,(FLAGI2) AND %00000101 CP %00000101 IN A,(PB) JR Z,DWK1 RES 0,A JR DWK2 DWK1 SET 0,A DWK2 OUT (PB),A LD A,(FLAGI2) AND %00000101 ;3350 CP %00000001 JR Z,N1 CP 0 JR Z,N0 CP %00000101 JR NZ,N0 JR DWK44 ;LD A,i MANIP W NMI N0 LD A,(ZND1) BIT 0,A JR Z,N0Z LD A,%00000001 JR DN0 N0Z XOR A DN0 OUT (PS),A IN A,(PB) RES 1,A JR DWK4 N1 LD A,(ZND1) BIT 1,A JR Z,N1Z LD A,%00000001 JR DN1 N1Z XOR A DN1 OUT (PS),A ;3590 LD A,I RES 4,A LD I,A IN A,(PB) SET 1,A DWK4 OUT (PB),A DWK44 LD A,(FLAGI3) BIT 7,A RET Z ;BYL ODB LD A,(FLAGI2) BIT 0,A RET NZ ;JEST NAD LD A,(FLAGI3) RES 7,A LD (FLAGI3),A LD A,(PASM) SET 1,A LD (PASM),A CALL USTSYN RET CA LD A,(WYNRAH) LD B,A AND %11110000 ;3830 RRCA LD C,A RRCA RRCA ADD A,C LD C,A LD A,B AND %00001111 ADD A,C SRL A ;WYNIK CA/2 LD B,A LD A,(PASM) AND %00011000 CP 0 JR Z,DCA77 LD A,B SRL A ;/2 LD B,A LD A,(ADRBCD+5) BIT 0,A JR Z,DCA77 ;NZ LD A,25 ADD A,B JR DCA78 ;4070 DCA77 LD A,B DCA78 SLA A SLA A LD B,A LD A,%11000100 ;obr.skali C/A(49-wynik) SUB B LD B,A IN A,(PB) AND %00000011 ADD A,B OUT (PB),A RET SMETR PUSH AF PUSH BC PUSH DE PUSH HL LD A,(BSMTR) ;S-mtr-obr i wysw CP 42 JR C,D8SM8 LD A,41 D8SM8 LD B,A LD HL,SM CALL CML ;w cml zap w c wart do wysw ;4310 LD A,B CP 6 JR Z,D7SM CALL CST JR D1SMT D7SM LD A,(BKOD+6) BIT 1,A JR Z,D2SMT LD A,%01010011 JR D3SMT D2SMT LD A,%01010001 D3SMT LD (BKOD+6),A D1SMT POP HL POP DE POP BC POP AF RET GEN LD A,I SET 6,A LD I,A RET NGEN LD A,I ;4550 RES 6,A LD I,A RET WPROG DEFB 203,$46,$C9 WBIT DEFB $7E,$76,$6E,$66,$5E,$56,$4E,$46 WRES DEFB $BE,$B6,$AE,$A6,$9E,$96,$8E,$86 WSET DEFB $FE,$F6,$EE,$E6,$DE,$D6,$CE,$C6 WELPA ;poczatki pamieci elbuga wg nr-u bitu DEFB $00,$00,$A6,$0E,$BE,$10,$EA,$11,$16,$13,$42,$14 DEFB $6E,$15,$14,$24,$40,$25,$6C,$26,$98,$27,$C4,$28 DEFB $F0,$29 EBIT ;w HL nr bit,wynik-res,set lub wskazn. LD A,L AND %00000111 PUSH HL LD H,B LD L,C LD B,0 LD C,A ADD HL,BC ;4790 LD A,(HL) LD (BPROG+1),A POP HL SRL H RR L SRL H RR L SRL H RR L LD BC,EPAM1 ADD HL,BC JP BPROG ;do RAM gdzie na koncu RET WPEL LD A,(WEJSC+2) AND %00001100 CP %00001100 RET Z ;4960 DWP1 LD C,A LD A,I RES 2,A LD I,A ;odbl odcz PUSH BC LD A,%00000010 LD (BPRZEC),A CALL WYSPEL CALL OPKL LD HL,FLAGI LPAE11 LPAE1 CALL WYSPEL PUSH HL CALL VNKP CALL SZELB POP HL LD B,8 LD DE,WEJSC+8 LPAE DEC DE LD A,(DE) AND %00001100 CP %00001100 JR NZ,DPE1 ;5190 DJNZ LPAE JR LPAE1 DPE1 DEC B ;bo B nie dec przez djnz LD C,A LD A,3 CP B CALL Z,SZELB JR Z,LPAE1 LD A,2 CP B JR NZ,DPE7 BIT 2,C JP Z,WPWYJ7 BIT 0,(HL) JP NZ,WPWYJ7 JP WPWYJ5 DPE7 LD A,I RES 2,A LD I,A ;odbl odczytu LD DE,WELPA ;oblicz.nr bitu i wpis razem z porow BIT 2,C JR Z,DPE3 LD DE,WELPA+12 DPE3 LD A,1 ;5430 CP B JR NC,DPE8 DEC B DEC B DPE8 LD A,B ADD A,B ;*2 bo dwubaj dane LD B,0 LD C,A EX DE,HL ADD HL,BC PUSH DE LD DE,NRBITU LD BC,4 LDIR LD (WYNEL),BC LD (WYNEL+2),BC ;z ldir bylo 0 POP HL POP BC ;byl zapis czy odczyt? PUSH BC BIT 2,C JR Z,WPZAP SET 1,(HL) RES 0,(HL) JR LPAE1 ;5670 WPZAP LD A,I SET 3,A LD I,A PUSH BC LD BC,0 LD (WYNEL),BC LD (WYNEL+2),BC POP BC PUSH HL LD HL,(NRBITU) PUSH HL LKA CALL ZAPZER CALL WYSPEL LD A,I SET 3,A LD I,A BIT 7,A JR Z,LKA AND %01110111 LD I,A POP HL INC HL ;przy odcz pierwsz to przerwa LD (NRBITU),HL POP HL ;5910 RES 1,(HL) SET 0,(HL) SET 7,(HL) JP LPAE11 WPWYJ7 WPWYJ XOR A LD (HL),A LD A,I RES 6,A LD I,A WPWYJ5 WPWYJ2 XOR A LD (BPRZEC),A POP BC LD A,I RES 2,A LD I,A ;odbl odcz z pam CALL USTSYN CALL OPKL RET ZAPJED ZKRO2 LD BC,WSET ODCBI ZKRO1 LD HL,(NRBITU) ;6150 INC HL LD (NRBITU),HL CALL SPR RET Z LD A,I SET 5,A ; OMIN TRANSM SKALI LD I,A CALL EBIT RET ;powr do elb z zkro,zkre,zprz ZAPZER LD BC,WRES JR ZKRO1 ODCBIT LD A,I BIT 2,A RET NZ ;bo wstrzym odcz z pam LD BC,WBIT CALL ODCBI JR NZ,DOC1 RST LDAF RES 2,A SET 4,A RST LDFA RET ;6390 DOC1 RST LDAF BIT 2,A JR NZ,DOC2 OR %00100100 LD (FLAGI),A RET DOC2 OR %01000100 RST LDFA RET SZELB PUSH HL ;ust szybk elb PUSH DE PUSH BC PUSH AF LD HL,BEL3 ;bel LD A,(WEJSC+3) LD C,A PUSH BC BIT 2,A JR NZ,SZ1 XOR A CP (HL) JR Z,SZ2 DEC (HL) ;6630 JR SZ2 SZ1 BIT 3,A JR NZ,SZ2 LD A,34 CP (HL) JR Z,SZ2 INC (HL) JR SZ2 SZ3 POP AF POP BC POP DE POP HL RET SZ2 LD A,(HL) LD HL,WELB+35 LD B,0 LD C,A ADD HL,BC LD A,(HL) LD (BEL),A LD A,(BEL3) LD HL,WELB CALL CML CALL CST ;6870 POP BC LD A,C AND %00001100 CP %00001100 JR Z,SZ3 LD A,120 CALL OPKL1 JR SZ3 SPR PUSH HL PUSH DE LD DE,(POROWN) EX DE,HL SBC HL,DE LD A,H OR L JR NZ,DZK1 LD DE,(NRBITU) DEC DE LD (NRBITU),DE LD A,I SET 7,A SET 5,A RES 6,A ;7110 LD I,A XOR A ;jednocz ustaw Z dla ret z RST LDFA DZK1 PUSH BC PUSH AF LD A,I BIT 3,A JR NZ,DZK22 RST LDAF BIT 0,A JR Z,DZK22 CALL ODEEL JR DZK23 DZK22 CALL DODEL DZK23 POP AF POP BC POP DE POP HL RET WYSPEL PUSH HL PUSH DE PUSH BC LD HL,WYNEL ;7350 LD DE,WYNRAH LD BC,4 LDIR CALL ROZS CALL KOD7 POP BC POP DE POP HL RET WELB DEFB $90,$53,$48,$44,$41,$38,$35,$33,$31,$29,$28 DEFB $27,$25,$24,$23,$22,$21,$20,$19,$18,$17,$16 DEFB $15,$14,$13,$12,$11,$10,$09,$08,$07,$06,$05 DEFB $04,$03 DEFB 6,10,11,12,13,14,15,16,17,18,19 DEFB 20,21,22,23,24,25,27,28,30,31,33 DEFB 36,38,41,44,48,53,59,67,76,89,107 DEFB 133,176 DODEL LD DE,WYNEL LD HL,WKROEL LD B,4 AND A LDODE LD A,(DE) ;7590 ADC A,(HL) DAA LD (DE),A INC HL INC DE DJNZ LDODE RET ODEEL LD HL,WKROEL LD DE,WYNEL LD B,4 AND A LODEE LD A,(DE) SBC A,(HL) DAA LD (DE),A INC HL INC DE DJNZ LODEE RET WKROEL DEFB $00,$01,$00,$00 ELEKTR BIT 3,A ;trwa kas pam elb ;7830 JP NZ,DNMI3Z BIT 6,A ;generator JR Z,DGE1 RST IPC ;generacja 500 Hz XOR %00000010 RST OPC DGE1 LD A,(FLAGI2) AND %00000101 CP %00000101 JR NZ,DGE4 LD A,I BIT 6,A IN A,(PB) JR Z,DGE2 SET 1,A JR DGE3 DGE2 RES 1,A DGE3 OUT (PB),A ;elbug DGE4 RST LDAF AND %01110000 CP 0 JR NZ,EL11 LD A,I ;wpis dan z hzmia jesli zmia wykryta BIT 1,A ;8070 JR Z,DEL90 RES 1,A LD I,A LD A,(HZMIA) LD B,A JR DEL91 DEL90 RST IPA AND %00110000 CP %00110000 JR Z,EL111 CP 0 JR NZ,DEL95 LD A,(HZMIA) XOR %00110000 DEL95 LD B,A LD (HZMIA),A LD A,I SET 2,A ;wstrzymanie odcz pam LD I,A DEL91 BIT 4,B JR Z,EKRE RST LDAF ;kropka OR %10110000 RST LDFA ;8310 JR EL111 EKRE RST LDAF ;kreska OR %11110000 RST LDFA JR EL111 EL11 LD A,I BIT 1,A JR NZ,EL111 RST IPA ;testM AND %00110000 CP %00110000 JR Z,EL111 CP 0 JR Z,EL111 LD B,A LD A,(HZMIA) AND %00110000 CP B JR Z,EL111 DEL93 XOR %00110000 LD (HZMIA),A LD A,I OR %00000110 LD I,A ;8550 EL111 RST LDAF ;odcz z pam elb BIT 1,A JR Z,EL11A BIT 3,A JR NZ,EL11A CALL ODCBIT EL11A LD HL,BEL2 RST LDAF AND %01110000 CP 0 JP Z,DNMI3Z BIT 5,A JR NZ,ODKRO BIT 6,A JR NZ,ODKRE RST LDAF ;odprz BIT 3,A JR NZ,DPR2 SET 3,A RST LDFA BIT 0,A JR Z,DPR4 PUSH HL ;8780 CALL ZAPZER POP HL DPR4 LD (HL),3 DPR2 LD A,(ZEG1) CP 0 LD A,(HL) CALL NZ,NGEN JP NZ,DNMI3Z DEC A CP 0 JR NZ,DPR1 RST LDAF AND %01100111 RST LDFA LD A,3 LD (BEL2A),A CALL NGEN JR DNMI3 DPR1 LD (HL),A LD A,(BEL) LD (ZEG1),A CALL NGEN JR DNMI3 ODKRE RST LDAF ;9020 BIT 3,A JR NZ,DKRE2 SET 3,A RST LDFA BIT 0,A JR Z,DKRE4 PUSH HL CALL ZAPJED POP HL DKRE4 LD (HL),5 DKRE2 LD A,(ZEG1) CP 0 LD A,(HL) CALL NZ,GEN JR NZ,DNMI3 DEC A CP 0 JR NZ,DKRE1 RST LDAF AND %10110111 RST LDFA CALL GEN JR DNMI3 ;9250 DKRE1 LD (HL),A LD A,(BEL) LD (ZEG1),A CALL GEN JR DNMI3 ODKRO1 ODKRO RST LDAF BIT 3,A JR NZ,DKRO2 SET 3,A RST LDFA BIT 0,A JR Z,DKRO4 PUSH HL CALL ZAPJED POP HL DKRO4 LD (HL),3 DKRO2 LD A,(ZEG1) CP 0 LD A,(HL) CALL NZ,GEN JR NZ,DNMI3 DEC A CP 0 ;9490 JR NZ,DKRO1 RST LDAF AND %11010111 RST LDFA CALL GEN JR DNMI3 DKRO1 LD (HL),A LD A,(BEL) LD (ZEG1),A DNMI3 DNMI3Z RST LDAF BIT 0,A RET Z BIT 7,A RET NZ LD A,(ZEG5) CP 0 RET NZ LD A,(BEL2A) DEC A CP 0 JR Z,OP1 LD (BEL2A),A ;9730 LD A,(BEL) LD (ZEG5),A RET OP1 LD A,3 LD (BEL2A),A CALL ZAPZER RET SM DEFB $42,$36,$30,$24,$18,$12,$6 DEFB 9,8,7,6,5,5,4,4,4,4,3,3,3,3,3,3 DEFB 2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,0 CML CALL VV1 LD C,A AND %00001111 CALL VV LD D,A LD A,(BKOD+7) AND %00000010 RES 1,D ADD A,D LD (BKOD+7),A RET CST LD A,C ;9970 SRL A SRL A SRL A SRL A CP 0 JR NZ,D3SM XOR A JR D2SM D3SM CALL VV D2SM LD D,A LD A,(BKOD+6) AND %00000010 RES 1,D ADD A,D LD (BKOD+6),A RET VV LD HL,ZNAKI+1 VV1 LD D,0 LD E,A ADD HL,DE LD A,(HL) ;10210 RET WVOX DEFB 0,$02,$03,$04,$05,$06,$07,$08,$09 DEFB $10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20 PRDWA LD DE,WYNIK LD BC,12 LDIR RET PRZEDW LD DE,WYNRAH ;do wynik liczydla ,w HL z DPRZ LD BC,4 LDIR RET PRZEZW LD HL,WYNRAH ;z wynik liczydla ,w DE do kad JR DPRZ TRASAA LD A,(FLAGI3) ;w hl przygotowane bsaa lub adrbin SET 4,A LD (FLAGI3),A LD B,8 LD C,2 ;bajty do transmisji RST IPC ;10450 AND %01110011 ;RES 7,A RST OPC ;WSTEPNE 0 SET 2,A RST OPC SET 3,A ;TEST LEADING 0 RST OPC LOTRA RES 3,A RST OPC RLC (HL) JR NC,JZER SET 7,A JR DATRA JZER RES 7,A DATRA RST OPC SET 3,A RST OPC DJNZ LOTRA DEC C XOR A CP C RST IPC JR Z,DATRA2 INC HL LD A,(FLAGI2) ;10690 BIT 7,A JR Z,DSAA1 LD B,1 ;dopelnienie do 10 dla inisjaliz.SAA RES 7,A LD (FLAGI2),A JR DSAA2 DSAA1 LD B,8 DSAA2 RST IPC JR LOTRA DATRA2 AND %01110111 ;data i zegar=0 RST OPC AND %01110011 ;tDLENhold RST OPC ;clk konczacy transmisje SET 3,A RST OPC RES 3,A RST OPC LD A,(PASM) ;sprawdz pasm OR %11100000 LD C,A LD A,%01000010 LD HL,ADRBIN CP (HL) ;10920 JR NC,DPA1 LD A,C RES 5,A DPA4 LD (PASM),A JR DPA2 DPA1 LD A,(ADRBIN) CP %00100011 JR NC,DPA3 LD A,C RES 7,A JR DPA4 DPA3 LD A,C RES 6,A JR DPA4 DPA2 LD A,(PASM) ;TRANSM.PRZEL.ZAKR. AND %00011000 CP 0 JR Z,DS1 CP %00010000 JR Z,WSW LD A,%00100000 ;144MHZ WSW LD (ZKF),A LD C,A JR DS2 DS1 LD IY,WP-1 LDS LD A,(ADRBIN) LD H,A LD A,(ADRBIN+1) LD L,A INC IY LD B,(IY) INC IY LD C,(IY) OR A SBC HL,BC JR C,DS3 JR Z,DS3 JR LDS DS3 LD A,(IY+12) JR WSW DS2 LD B,8 RST IPC LOTR1X RES 3,A RST OPC RLC C JR NC,JZE1X SET 7,A JR DATR1X JZE1X RES 7,A DATR1X RST OPC SET 3,A RST OPC DJNZ LOTR1X RES 3,A RST OPC LD A,(PASM) ;transmisja pasm LD C,A BIT 2,A JR NZ,DTR7 LD A,(ADRBCD+1) CP $04 JR NZ,DTR7 LD A,C ;144 XOR %00000001 LD C,A ;11160 DTR7 LD B,8 RST IPC LOTR1 RES 3,A RST OPC RLC C JR NC,JZE1 SET 7,A JR DATR1 JZE1 RES 7,A DATR1 RST OPC SET 3,A RST OPC DJNZ LOTR1 RES 3,A RST OPC HALT LD A,(FLAGI3) RES 4,A LD (FLAGI3),A RET WP DEFB 11,$B8,$13,$88,$23,$28,$3E,$80,$59,$D8,$FF,$FF ;13,27,20,235,36,139,63,227,91,59,255,255 DEFB %00000100,%00000100,%10000000,%10000000,%00001000,%00001000 DEFB %01000000,%01000000,%00000010,%00000010,%00000001,%00000001 SKATRA LD HL,B164 RLC (HL) JR C,DSK ;11400 LD IX,BKOD-1 DSK INC IX LD B,8 LD C,2 IN A,(PC) RES 6,A OUT (PC),A PUSH IX POP HL LOTRA2 RES 5,A OUT (PC),A RLC (HL) JR NC,JZER2 RES 4,A JR DATRA3 JZER2 SET 4,A DATRA3 OUT (PC),A SET 5,A OUT (PC),A DJNZ LOTRA2 DEC C XOR A CP C IN A,(PC) ;11640 JR Z,DATRA4 BIT 0,(IX+BPRZEC-BKOD) JR Z,DA44 ;b0=1-przecinek staly SET 1,(IX) JR DATR44 DA44 BIT 1,(IX+BPRZEC-BKOD) JR Z,DATR4A LD HL,MIGA BIT 5,(HL) JR Z,DATR4A SET 1,(IX) JR DATR44 DATR4A RES 1,(IX) DATR44 LD HL,B164 LD B,8 JR LOTRA2 DATRA4 RES 5,A OUT (PC),A RES 4,A OUT (PC),A LD E,A RST IPA AND %00001100 LD D,A ;DLA GALKI ;11880 LD A,E SET 6,A OUT (PC),A LD A,(BUPA) CP D RET Z LD (BUPA2),A LD A,D LD (BUPA),A LD A,(BPRZEC) BIT 1,A RET NZ BIT 0,A RET NZ LD A,(BPRZEC+6) BIT 0,A RET NZ LD A,(ILKR) CP $FF RET Z INC A LD (ILKR),A RET WKOR DEFB 3,3,0,0,2,3,1,0 ;dane do korekcji f SAA ;12120 ZNAKI DEFB %00000000,%11101101,%01000001,%01111100,%01110101 DEFB %11010001,%10110101,%10111101,%01000101,%11111101 DEFB %11110101 DEFB %11011101,%10111001,%00111000,%01111001,%10111100 DEFB %10011100 ;12190 PRZEC DEFB %00000010 MINUS DEFB %00010000 PLUS DEFB %01010001 OPKL LD A,100 LD (ZEG0),A PUSH BC PUSH HL OPKL11 LD A,105 LD (ZEG3),A LOPKL1 LD B,8 LD HL,WEJSC-1 LOPKL INC HL LD A,(ZEG0) CP 0 JR NZ,DLO1 DLO1 LD A,(HL) AND %00001100 CP %00001100 JR NZ, OPKL11 ;12420 DJNZ LOPKL LD A,(ZEG3) CP 0 JR NZ,LOPKL1 POP HL POP BC XOR A LD (ILKR),A RET LDKR1 LD DE,KROK LD BC,4 LD HL,WKROK LDRI LDIR RET LDKR2 LD DE,KROK LD BC,4 LD HL,WKROK+4 JR LDRI LDKR LD DE,WKROK LD BC,8 JR LDRI ;w HL przygoto. z kad ;12660 OPKLB LD A,$FF OPKL1 LD (ZEG3),A LOPB LD A,(ZEG3) CP 0 JR NZ,LOPB RET ROZS LD B,4 LD DE,ADRBCD+7 LD HL,WYNRAH LROZS LD A,(HL) AND %00001111 LD (DE),A DEC DE LD A,(HL) SRL A SRL A SRL A SRL A LD (DE),A DEC DE INC HL ;12900 DJNZ LROZS RET WZCB DEFB 0,1,2,4,5,6,7,9,$10,$11,$12,$14,$15,$16,$17,$19,$20 DEFB $21,$22,$24,$25,$26,$29,$27,$28,$30,$31,$32,$33,$34 DEFB $35,$36,$37,$38,$39,$40,$41,$42,$43,$44 DEFB 3,8,$13,$18,$23 WKCB DEFB 0,$10,$56,2,0,$60,$60,2,0,$10,$65,2,0,$60,$69,2 DEFB 0,$10,$74,2,0,$60,$78,2,0,$10,$83,2 SPRWI LD C,7 LD DE,WKCB+27 LSP1 LD HL,WYNRAH+3 LD B,4 XOR A CP C JR NZ,LSP2 WYCB1 LD A,(FLAGI3) ;bo f;; DLSP2 DEC DE DEC HL DJNZ LSP2 JR KTWZ LSP4 DEC DE DJNZ LSP4 ;dokonczenie petli(next adr de) DEC C JR LSP1 KTWZ2 LD A,7 CP C JR Z,WYCB1 JR LSP3 KTWZ LD A,7 CP C JR Z,WYCB1 ;bo f>od gornej granicy JR DLSP3 ;13370 LSP3 DEC DE ;w de adres poczatku wykrytej 40-tki DJNZ LSP3 DLSP3 LD A,C ADD A,9 LD (PRO+1),A LD A,(FLAGI3) SET 0,A LD (FLAGI3),A LD A,(ADRBCD+5) LD (PRO+5),A LD A,(ADRBCD+6) LD (PRO+6),A INC DE PUSH DE LD BC,8 LD DE,PLI LD HL,KROK LDIR LD BC,4 POP DE LD HL,KROK EX DE,HL LDIR CALL ODE LD A,(WYNRAH+2) ;13620 SLA A SLA A SLA A SLA A LD B,A LD A,(WYNRAH+1) SRL A SRL A SRL A SRL A ADD A,B LD BC,8 LD DE,KROK LD HL,PLI LDIR LD B,A AND A LD A,$45 LD HL,WZCB+44 LWZCB1 PUSH AF LD A,B CP (HL) JR Z,DWZCB1 DEC HL ;13860 POP AF SBC A,1 DAA CP 0 RET Z JR LWZCB1 DWZCB1 POP AF LD B,A AND %00001111 LD (PRO+3),A LD A,B SRL A SRL A SRL A SRL A LD (PRO+2),A RET KOD7 LD C,1 LD A,(FLAGI3) BIT 1,A JR Z,DK471 CALL SPRWI LD A,(FLAGI3) ;14100 BIT 0,A JR Z,DK471 LD C,0 DK471 LD B,6 LD DE,ZNAKI+1 XOR A CP C JR Z,DK477 LD IY,ADRBCD+1 JR LKOD1 DK477 LD IY,PRO+1 LKOD1 LD A,(IY) CP 0 JR NZ,DKOD XOR A ;PUSTY CP C JR Z,DK478 LD (IY+BKOD-ADRBCD-1),A JR DK479 DK478 LD (IY+BKOD-PRO-1),A DK479 INC IY DJNZ LKOD1 DKOD XOR A CP B ;14340 RET Z LKOD LD A,(IY) LD H,0 LD L,A ADD HL,DE XOR A CP C JR Z,DK480 LD A,(HL) LD (IY+BKOD-ADRBCD-1),A JR DK481 DK480 LD A,3 CP B JR NZ,DK483 XOR A JR DK481 DK483 LD A,(HL) DK481 LD (IY+BKOD-PRO-1),A INC IY DJNZ LKOD RET END