Z80-EMUF

Z80-EMUF, 1984 Issue 6

Z80 CPU at 2MHz, 2x Z80 PIO, 1x 2716 EPROM, 1×6116 SRAM

On this page the original article, the printed test program in listing and hex format.


0001   0000             .org 0000h
0002   0000             ; Testprogramm für Z80 EMUF:
0003   0000             ; auf den Ausgängen der PIO's
0004   0000             ; wird nacheinander gezählt
0005   0000             
0006   0000             RAM     equ 8000h
0007   0000             
0008   0000             PIO0    equ 0
0009   0000             PIO1    equ 10h
0010   0000             ; PIO Adressen:
0011   0000             ; PIO+0: Port A
0012   0000             ; PIO+1: Port B
0013   0000             ; PIO+2: Control Port A
0014   0000             ; PIO+3: Control Port B
0015   0000             
0016   0000 3E CF       EMUT1:  ld a,11001111b; Initialisierung aller Ports auf Einzelbit Ein- und Ausgabe
0017   0002 D3 02           out (PIO0+2),a
0018   0004 3E 00           ld a,0
0019   0006 D3 02           out (PIO0+2),a
0020   0008 3E CF           ld a,11001111b
0021   000A D3 03           out (PIO0+3),a
0022   000C 3E 00           ld a,0
0023   000E D3 03           out (PIO0+3),a
0024   0010                 
0025   0010 3E CF           ld a,11001111b; Initialisierung PIO2 analog zu PIO1
0026   0012 D3 12           out (PIO1+2),a
0027   0014 3E 00           ld a,0
0028   0016 D3 12           out (PIO1+2),a
0029   0018 3E CF           ld a,11001111b
0030   001A D3 13           out (PIO1+3),a
0031   001C 3E 00           ld a,0
0032   001E D3 13           out (PIO1+3),a
0033   0020             
0034   0020 06 00       LOOP:   ld b,0
0035   0022 78          L1: ld a,b
0036   0023 32 00 80        ld (RAM),a; RAM Adresse 00 .. FF wird angesprochen 
0037   0026 3A 00 80        ld a,(RAM)
0038   0029 D3 00           out (PIO0+0),a
0039   002B 05              dec b
0040   002C C2 22 00        jp nz,L1
0041   002F             
0042   002F 06 00           ld b,0
0043   0031 78          L2: ld a,b; jetzt 2. Port PIO0
0044   0032 32 00 80        ld (RAM),a;  
0045   0035 3A 00 80        ld a,(RAM)
0046   0038 D3 01           out (PIO0+1),a
0047   003A 05              dec b
0048   003B C2 31 00        jp nz,L2
0049   003E             
0050   003E 06 00           ld b,0
0051   0040 78          L3: ld a,b; jetzt 1. Port PIO1
0052   0041 32 00 80        ld (RAM),a;  
0053   0044 3A 00 80        ld a,(RAM)
0054   0047 D3 10           out (PIO1+0),a
0055   0049 05              dec b
0056   004A C2 40 00        jp nz,L3
0057   004D             
0058   004D 06 00           ld b,0
0059   004F 78          L4: ld a,b; jetzt 2. Port PIO1
0060   0050 32 00 80        ld (RAM),a;  
0061   0053 3A 00 80        ld a,(RAM)
0062   0056 D3 11           out (PIO1+1),a
0063   0058 05              dec b
0064   0059 C2 4F 00        jp nz,L4
0065   005C                 
0066   005C C3 20 00        jp LOOP
0067   005F             
0068   005F                 DS 1000h
0069   105F             .END        

Hex and listing of test program.

Photos and assembler listing from https://makerprojekte.de/z80-emuf-wiederbelebt/