Elektronische Morsetaste mit U884 history menue

FUNKAMATEUR 12/93 S. 801 ff.

Experimentierschaltung mit U 882 
WERNER SCHMIDT und ANGELIKA SCHMIDT

Mitteilung aus der Interessengemeinschaft Heimcomputer der IH Dresden

Zum besseren Verständnis sollen zu dem Beitrag ,;Experimentierschaltung mit U 882°, den wir im Heft 4 dieses Jahres veröffentlichten, das Programmlisting für das Betriebssystem (Tafel 1) und die Unterprogramme UP1, UP2 und UP4 (Tafeln 2 bis 4) nachgereicht werden.

 Tafel 2: Unterprogramm UP1: 8-bit-Vor-Rückzähler 
Marke Adresse Hex-Code Assembler-Code Kommentar
ORG 0000H ;Adresse Programmbeginn
0000H FF FF NOP ;Nüx zu tun ;-)
0002H FF FF ;System schwingt ein
0004H FF FF
0006H FF FF
0008H FF FF
00OAH FF FF
  00OCH 8F DI ;Interrupt verboten
00ODH 31 F0 SRP #%FO ;RPE <- FO
00OFH FC 80 LD R15,#%80 ;
0011H EC 00 LD R14,#%00 ;
0013H FF FF NOP ;
0015H FF FF NOP ;
0017H FF FF NOP ;
0019H 8C 05 LD R8,#%05 ;P01 M
001BH 7C 41 LDR7,#%41 ;P3M
001DH 6C OF LDR6,#%0F ;P2M
001FH FF FF NOP ;
0021H FF FF NOP ;
0023H FF FF NOP ;
0025H FF FF NOP ;
0027H FF FF NOP ;
0029H 31 00 SRP#%00 ;RP <- 00
002BH 4C 0A LDR4,#%0A  ;Anzahl d. zu lösch. Reg.
002DH 5C 0F LD R5,#%0F ;Anf.-adr.
002FH 81 05 CLR@5 ;Lösche Reg. F,E,...,6
0031H 00 05 DEC R5 ;
0033H 4A FA DJNZ R4,$-4 ;
0035H 9F EI ;Interrupt erlaubt
0036H B1 05 CLR R5 ;
0038H 88 00 LD R8,PRTO ;BCD-Eingabe
003AH F0 08 SWAP R8 ;Nippeltausch
003CH 89 00 LD PRTO, R8 ;BCD-Ausgabe 
003EH 48 00 LD R4,PRTO ;BCD-Eingabe über PO3-00 
0040H 56 04 0F AND4,#%0F ;Reg. 4 Bit 7..4 <-0
0043H A6 04 00 CP4,#%00 ;BCD-Eingabe=0?
0046H 6B 04 JRZ,$+6 ;
0048H D4 04 CALL@4 ;UP-Aufruf
004AH 8B EA JR,$-20 ;
004CH 76 03 08 TM3,#%08 ;P33=0?
004FH 6B 1D JRZ,$+31 ;
0051H E6 F7 C3 LD 241,#%C3 ;TMR für P36=2MHz
0054H 6C 3F LD R6,#%3F ;kurze Blinkdauer
0056H 46 03 10 OR3,*%10 ;P34=1
0059H 7C FF LD R7,#%FF ;
005BH FF NOP ;
005CH 7A FD DJNZ R7,$-1 ;Zeitschleife
005EH 6A F9 DJNZ R6,$-5 ;
0060H 56 03 EF AND3,#%EF ;P34=0
0063H 6C 3F LD R6,#%3F ;
0065H 7C FF LD R7,#%FF ;
0067H FF NOP ;Zeitschleife
0068H 7A FD DJNZ R7,$-1 ;
006AH 8A F9 DJNZ R6,$-5 ;
006CH 88 CB JR,$-54 ;
006EH E6 F1 43 LD 241,#%43 ;TMR für P36-2kHz
0071H E6 F4 19 LD 244,#%19 ;TO <-19 (:25)
0074H E6 F5 15 LD 245,#%15 ;PRE0 <-15 (:5)
0077H 6C BF LD R6,#%BF ;lange Blinkdauer
0079H 8B DB JR,$-35 ;

Tafel 1: Programmlisting für das Betriebssystem
   
   
  

  1000H   ORG 0000H ;;Adresse Programmbeginn
  0079H 8B DB JR,$-35 ;
 

0100 8F DI
01 31 FO SRP*%FO Steuerregistergruppe
03 SC 25 LD R8,*%25 Pol m
05 7C 41 LD R7,*%41 P3M
07 31 OP SRP*%00 Arbeitsregistergruppe0 
09 BO 01 CLR 1 - 
OB 66 03 06 TCM3,#%06 P32131=07 
DE 6B FB JRZ,$-3 Warteschleife für P32131=1
10 4C FF LDR4,*%FF Entprellschleifefür
12 FF NOP 1/0-Übergang
13 4A FD DJNZ R4,$-1
15 76 03 08 TM 3,*%08 P33=07
18 6B 04 JRZ,$+6
1A 20 . 01 iNCX1 Vorwärtszählen
1C 8B 02 JR,$+4
1E 00 Ot DEM Rückwärtszählen
20 66 03 06 TCM 3,*%06 P32131=07
23 EB FB JRNZ,$-3 Warteschleife für P32131=0
25 4C FF LD R4,*%FF
27 FF NOP Entprellschleifefür
28 4A FD DJNZ R4,$-1 0/1-Übergang
2A 8B DF JR,$-31 

 

Tafel 3: Unterprogramm UP2: impuNgenerator
0200 BO F6 CLR246 CLR P2M 8-bit-Ausgang

02 E6 F1 43 LD241,*%43 TMRF-43 (TOUT=TO)

05 BO F4 CLR244 CLR TO (:2561

07 76 03 08 TM 3,*%08 P33=07

OA 6B 05 JRZ,$+7

OC Efi F5 41 LD 245,*%41 PRE 0„-41 (:16)

00 8B 03 JR,$+5

11 E6 F5 65 LD 245,*%65 PRE 0E-65 (:25)

14 28 F4 LD R2,X244 PRT 2E-TO

16 88 EF JR,$-15

Tafel 4: Unterprogramm UP4: Serlen-Parallel-Wen dier

0400 E6 F1 43 LD241,#%43 TMR,ToüT=TO 
03 BO FA CLR250 IROzurücksetzen 
05 E6 F5 101) LD245,*%OD PREO4--(:3). 
08 46 03 20 OR3,*%20 P35<-1, V0E24 hell 
OB 56 03 EF AND3,*%EF P34<--0,"+"dunkel 
OE BO 01 CLR1 . PRT1+-0 
10 76 03 08 TM3,*0/.08 P33=07 
13 EB 14 JRNZ,$+22

15 76 FA 08 TM2W,*08 IR03 =17, Zeichen an P307

18 68 F6 JRZ,$-8

1A 56 FA F7 AND250,*%F7 IR03F-0

1D 18 FO . LDR1,240 PRT1t-Zeichen,Parallelaus-


1 F FF NOP gebe

20 56 03 EF AND3,*%EF P34f-0,ROYaktiv 
23 FF NOP

24 46 03 10 OR3,*%10 P34E-1,RDYinaktiv

27 88 E7 JR,$-23

29 09 ' OC LD12,RO Reg 12F-Bitratenbereich

2B 56 OC OF AND12,*%OF Reg 12 Bit 7..4+-0

2E C9 F4 LD244,R12 TO<-Bitratenbereich

30 FO 00 SWAPO AnzeigeV0E22F-Bitraten-


32 88 DC JR,$-34 bereich

 

2800 F3 21 96 2A 11 10 24 01 30 00 ED B0 21 C0 2A 22
2810 41 23 3E 2A ED 47 ED 5E 3E OF D3 FA 3E 03 D3 FA
2820 AF D3 F8 32 0A 24 3E 90 D3 EC 3E FF D3 EC D3 EC
2830 D3 EE 32 09 24 FB DD 21 10 24 CD 5A 04 FE 02 F2
2840 36 28 FE 01 C2 E4 28 11 00 20 3E 01 32 00 20 3A
2850 00 20 CD CR 04 32 18 24 OE 03 AF 32 16 24 32 17
2860 24 32 1C 24 13 DD 21 16 24 CD 5A 04 FE 10 F2 65
2870 28 F5 3A 16 24 32 17 24 62 6B F1 F5 ED 6F F1 CD
2880 CA 04 32 16 24 CD 5A 04 FE 10 20 E2 OD 20 CB 3A
2890 18 24 32 1E 24 DD 21 1C 24 CD 5A 04 FE 02 F2 95
28A0 28 4F CD CA 04 32 1C 24 CD 5A 04 FE 10 20 ED 79
28B0 FE 01 20 04 1A CB FF 12 DD 21 22 24 CD 5A 04 FE
28C0 02 F2 B8 28 FE 01 28 07 21 00 20 34 C3 4F 28 DD
28D0 21 28 24 CD 5A 04 FE 02 F2 CF 28 FE 01 20 05 21
28E0 00 20 CB FE DD 21 2E 24 CD 5A 04 FE 01 20 F5 21
28F0 00 24 06 06 AF 77 23 10 FC 26 00 3A 00 20 CB BF
2900 6F FD 21 01 20 FD 46 00 3A 00 24 B8 20 03 AF 18
2910 OF CB CC 38 05 90 CB 84 18 06 4F 78 41 90 CB C4
2920 32 06 24 D3 EC FD 46 01 3A 01 24 B8 20 03 AF 18
2930 0F CB DC 38 05 90 CB 94 18 06 4F 78 41 90 CB D4
2940 32 07 24 D3 ED FD 46 02 CB B8 3A 02 24 B8 20 03
2950 AF 18 0F CB EC 38 05 90 CB A4 18 06 4F 78 41 90
2960 CB E4 32 08 24 D3 EE 7C D3 F8 32 0A 24 CB 4C 28
2970 17 3A 06 24 0E EC ED 40 90 47 3A 00 24 CB 44 28
2980 03 80 18 01 90 32 03 24 CB 5C 28 17 3A 07 24 0E
2990 ED ED 40 90 47 3A 01 24 CB 54 28 03 80 18 01 90
29A0 32 04 24 CB 6C 28 17 3A 08 24 OE EE ED 40 90 47
29B0 3A 02 24 CB 64 28 03 80 18 01 90 32 05 24 CD 2D
29C0 2A 3A 0A 24 67 CB 4C 20 A4 CB 5C 20 A0 CB 6C 20
29D0 9C 3E FF D3 EC D3 ED D3 EE FD CB 02 7E 28 06 CB
29E0 F4 CB FC 18 04 CB B4 CB BC 7C D3 F8 32 0A 24 FD
29F0 23 FD 23 FD 23 E5 OE 80 C5 CD 2D 2A C1 0D 20 F8
2A00 E1 2D C2 05 29 3A 00 20 CB 7F C2 FB 28 3A 09 24
2A10 E6 FF 28 11 AF 32 09 24 FD 77 00 FD 77 01 FD 77
2A20 02 2C C3 05 29 3E FF 32 09 24 C3 36 28 E5 21 05
2A30 24 11 3A 24 0E 03 7E 47 CD CA 04 12 78 07 07 07
2A40 07 CD CA 04 13 12 13 2B 0D 20 EB DD 21 3A 24 CD
2A50 83 04 E1 C9 F5 FD 7E 00 32 03 24 32 00 24 3A 0A
2A60 24 CB 8F 18 22 F5 FD 7E 01 32 04 24 32 01 24 3A
2A70 0A 24 CB 9F 18 11 F5 FD 7E 02 CB BF 32 05 24 32
2A80 02 24 3A 0A 24 CB AF D3 F8 32 0A 24 F1 FB ED 4D
2A90 54 2A 65 2A 76 2A 00 CA EO 4F 68 20 00 00 00 68
2AA0 20 CE 00 00 00 E6 6F 6C 00 CE E9 68 CE 00 00 20
2AB0 CA E8 48 00 CA 48 6F CA AE 00 AE E3 6F CA E8 68
2AC0 F5 C5 D5 E5 3A OA 24 E6 D5 D3 FB DD 21 34 24 CD
2AD0 5A 04 FE 10 28 2B FE 11 20 F1 3A 03 24 32 00 24
2AE0 3A 04 24 32 01 24 3A 05 24 32 02 24 3E FF D3 EC
2AF0 D3 ED D3 EE E1 D1 C1 F1 AF 6F 32 00 20 FB C3 14
2B00 2A 3A 0A 24 D3 F8 E1 D1 C1 F1 ED 45 FF FF FF FF
2B10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
2B20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF