7.8. GAL-Programmiersoftware

Die Software zur Baugruppe GAL-Programmierer stellt für damalige Verhältnisse eine kleine Sensation dar. Damit war es möglich, diese damals neuartigen GAL-Bausteine mit einem Ausbildungscomputer zu programmieren. Die Software ist, trotz der vielfältigen Funktionen, auch recht kompakt programmiert, bleibt aber trotzdem strukturiert und lesbar.

;******************************************************************************
;  ######      ###    ##               ########  ########   #######   ######
; ##    ##    ## ##   ##               ##     ## ##     ## ##     ## ##    ##
; ##         ##   ##  ##               ##     ## ##     ## ##     ## ##
; ##   #### ##     ## ##       ####### ########  ########  ##     ## ##   ####
; ##    ##  ######### ##               ##        ##   ##   ##     ## ##    ##
; ##    ##  ##     ## ##               ##        ##    ##  ##     ## ##    ##
;  ######   ##     ## ########         ##        ##     ##  #######   ######
;******************************************************************************

;******************************************************************************
;   Visual Studio Code 
;   Plugin: https://enginedesigns.net/retroassembler
;******************************************************************************

;******************************************************************************
; MFA 4.14
; GAL - Programmierer V 2.3 VGS Koeln
; fuer MFA Computer
;
;******************************************************************************
;
; Anpassungen
;     ( 12/2022 - Thilo Buhl - thilo@tau-alpha-c.de )
;
; Als Kommentar ist der jeweils Re-Assemblierte Originalcode enthalten
;
; # P00 02.12.2022
;     1. ReAssembler-Durchlauf
;
; # P01 03.12.2022
;     Sprungziele in MAT85-Code (Systembefehle) angepasst
;     RAM-Adressen fuer GAL-Pufferspeicher angepasst
;
; # P02 10.12.2022
;     [01] CMD-Meldung im GAL-Modus: 'GAL >' 
;     Ein wenig Code bereinigt
;
;******************************************************************************
;# ToDo
;     Unnoetige CR/LF bei Ausgaben noch entfernen
;    
;     Bug:  Eingaberoutine ueberpruefen
;           (CR fuehrt unkontrolliert zu Backspace)
;
;******************************************************************************
; # Benutzte Assembler-Anweisungen
;
; .target   Prozessorsystem
; .format   Ausgabeformat
; .org      Anfangsadresse setzen
; .equ      Zuweisung Variable
; .byte     Definiere BYTE
; .word     Definiere WORD (Lo/Hi-Byte)
; .text     Definiere Textstelle
; .textz    Definiere Textstelle mit $0 am Ende
;
;******************************************************************************


;******************************************************************************

                  .target "8085"
                  .format "BIN"

;                 version 2.3 P02

;******************************************************************************
; MAT85 - Systemcalls
;******************************************************************************

                              ; Die eigentlich korrekten MAT85 Sprungmarken:
RCHAR       .equ $0ae0        ; $0043 Ein Zeichen einlesen
WCHAR       .equ $0bb6        ; $0052 Ein Zeichen ausgeben
WCHARI      .equ $0bf7        ; $0055 Schreibe Zeichen direkt bis $0
WAHEX       .equ $0b6f        ; $0058 Zwei Hex-Stellen als ASCII ausgeben
WADEZ       .equ $0b19        ; $0061 Dezimalzahl in ASCII ausgeben
WBLANK      .equ $0b8e        ; $0067 Leerzeichen ausgeben
WBUF        .equ $0ba1        ; $006a Text ausgeben (HL Zeiger)
WBUFI       .equ $0bb0        ; $006d Text ausgeben nach Aufruf (Ende durch $0)
WCRLF       .equ $0c01        ; $0070 Zeilenschaltung ausgeben
WCRLFI      .equ $0c13        ; $0073 Zeilenschaltung und direkten Text ausgeben
GROSS       .equ $0ee9        ;       Umwandeln in Grossbuchstaben

SYSCLS      .equ $0890        ; SERIT3b 	Bildschirm loeschen ($0c an SER ausgeben) (SERIT3b)
MATCMD      .equ $01ac        ; CMD ($0040) KMD-Einsprung
MATHELP1    .equ $03b8        ; HELP1     Help-Tabelle ausgeben (HELP1)
SERO        .equ $089f        ; SERO      Serielle Ausgabe (Zeichen im Akku) 

MAT85_L1e17 .equ $1E17        ; PRTnotReady     Printer not ready
MAT85_L1e90 .equ $1E90        ; Printer         Printer einschalten

;******************************************************************************
; MAT85 - Systemspeicher
;******************************************************************************

STACKPOINT  .equ $FC32              ; User-Stackpointer
SEROUT      .equ $fc83              ; Sprungvektor fuer SEROUT
                                    ; in MINI-DOS: PRTST (muss im ASM-Code  noch korrigiert werden)
CRTFLG      .equ $fcc8              ; CRT-Flag (0=CRT,1=TTY)

; GAL - Anwender-Speicher

GAL_RAM_00  .equ $d000              ; GAL Pufferspeicher 1
GAL_RAM_80  .equ $d800              ; GAL-Pufferspeicher 2
GAL_RAM_83  .equ $d830
GAL_RAM_84  .equ $d840
GAL_RAM_85  .equ $d850
GAL_RAM_86  .equ $d860
GAL_RAM_88  .equ $d880

;******************************************************************************
;
;	IO 8255 - Portadressen
;
;******************************************************************************
                                    ; Portadresse GAL-Programmierer
                                    ; Achtung! In der Standardkonfiguration liegt hier auch
                                    ; der EPROM-Programmierer der aus MAT85 und MAT85+ angesprochen wird
IO_GAL_CTRL       .equ $D3
IO_GAL_PORT_A     .equ $D0
IO_GAL_PORT_B     .equ $D1
IO_GAL_PORT_C     .equ $D2

                                    ; Portadresse Druckerschnittstelle
IO_PRT_CTRL       .equ $E3
IO_PRT_PORT_A     .equ $E0
IO_PRT_PORT_B     .equ $E1
IO_PRT_PORT_C     .equ $E2

;******************************************************************************

                                    ;     *
                                    ;    **
                                    ;   ***
                                    ;  *****************************************
                  .ORG  $C000       ; ******* GAL-PROGRAMMIERER START-ADRESSE **
                                    ;  *****************************************
                                    ;   ***
                                    ;    **
                                    ;     *

;******************************************************************************
; START
;******************************************************************************

LC000:
			jmp LC070					;$c000 c3 70 c0   
			.text 	"(C) VGS KOELN 1990"
LC015:
			call WBUFI                  ;$c015 cd b0 0b
			.byte 	$0D,$0A,$0A
			.text 	"GAL 16V8, 16V8A V2.3"
			.byte	$0D,$0A,$0A,0
			ret                         ;$c033 c9         
			
LC034:		lxi h,GAL_RAM_00            ;$c034 21 00 d0
			mvi b,$58                   ;$c037 06 58      
LC039:
			mov m,b                     ;$c039 70         
			inx h                       ;$c03a 23         
			mov a,h                     ;$c03b 7c         
			cpi $d8                     ;$c03c fe d8      
			jnz LC039                   ;$c03e c2 39 c0   
			lxi h,GAL_RAM_80            ;$c041 21 00 d8   
			mvi b,$30                   ;$c044 06 30 
LC046:
			mov m,b                     ;$c046 70         
			inx h                       ;$c047 23         
			mov a,l                     ;$c048 7d         
			cpi $12                     ;$c049 fe 12      
			jnz LC046                   ;$c04b c2 46 c0   
			lxi h,GAL_RAM_86            ;$c04e 21 60 d8   
			mvi b,$2d                   ;$c051 06 2d  
LC053:
			mov m,b                     ;$c053 70         
			inx h                       ;$c054 23         
			mov a,l                     ;$c055 7d         
			cpi $a0                     ;$c056 fe a0      
			jnz LC053                   ;$c058 c2 53 c0   
			lxi h,$d818                 ;$c05b 21 18 d8   
			mov m,b                     ;$c05e 70         
			lxi h,GAL_RAM_84            ;$c05f 21 40 d8   
			mvi b,$2e                   ;$c062 06 2e  
LC064:
			mov m,b                     ;$c064 70         
			inx h                       ;$c065 23         
			mov a,l                     ;$c066 7d         
			cpi $48                     ;$c067 fe 48      
			jnz LC064                   ;$c069 c2 64 c0   
			mvi b,$00                   ;$c06c 06 00      
			mov m,b                     ;$c06e 70         
			ret                         ;$c06f c9         
			
LC070:
			; Start                     ;
			lxi sp,STACKPOINT           ;$c070 31 32 fc   
			call SYSCLS                 ;$c073 cd 90 08   #MAT-OS Bildschirm loeschen (SERINIT)
			lda GAL_RAM_80 + $15        ;$c076 3a 15 d8   
			cpi $47                     ;$c079 fe 47      
			jz Lc0fa                    ;$c07b ca fa c0   
			call LC015                  ;$c07e cd 15 c0   
			mvi a,$47                   ;$c081 3e 47      
			sta GAL_RAM_80 + $15        ;$c083 32 15 d8   
			lda GAL_RAM_80 + $15        ;$c086 3a 15 d8   
			cpi $47                     ;$c089 fe 47      
			jz Lc0a5                    ;$c08b ca a5 c0   
			call WBUFI                  ;$c08e cd b0 0b 
			.text 	"*** KEIN RAM ***"
			.byte 	$0D,$0A,$0A,0

Lc0a5:
			mvi a,$81                   ;$c0a5 3e 81      
			out IO_GAL_CTRL             ;$c0a7 d3 d3      
			mvi a,$05                   ;$c0a9 3e 05      
			call Lc7e7                  ;$c0ab cd e7 c7   
			mvi a,$06                   ;$c0ae 3e 06      
			call Lc7e7                  ;$c0b0 cd e7 c7   
			lda $d815                   ;$c0b3 3a 15 d8   
			ori $20                     ;$c0b6 f6 20      
			mov b,a                     ;$c0b8 47         
			in IO_GAL_PORT_C            ;$c0b9 db d2      
			cmp b                       ;$c0bb b8         
			jz Lc100                    ;$c0bc ca 00 c1   
			mvi a,$9b                   ;$c0bf 3e 9b      
			out IO_GAL_CTRL             ;$c0c1 d3 d3      
			call WBUFI                  ;$c0c3 cd b0 0b   	#MAT-OS WBUFI
			.byte 	$0D,$0A,$0A
			.text 	"*** PROGRAMMIERKARTE NICHT BEREIT ***"
			.byte	$0D,$0A,$0A,0
			
			mvi a,$00                   ;$c0f2 3e 00      
			sta $d815                   ;$c0f4 32 15 d8   
			jmp MATCMD                  ;$c0f7 c3 ac 01 
Lc0fa:
			call Lc7e2                  ;$c0fa cd e2 c7   
			jmp Lc10c                   ;$c0fd c3 0c c1   
Lc100:
			call Lc7dd                  ;$c100 cd dd c7   
			call Lc034                  ;$c103 cd 34 c0   
LC106:
			lxi h,Lc149                 ;$c106 21 49 c1   
			call MATHELP1               ;$c109 cd b8 03 
Lc10c:
			lxi sp,STACKPOINT           ;$c10c 31 32 fc   
			call WCRLF                  ;$c10f cd 01 0c   
			call WCRLFI                 ;$c112 cd 13 0c   	#MAT-OS WCRLFI
            .textz  "GAL > "            ; [01] sieht besser aus ... :-)
			;.textz 	"KMD*> "		; Originalcode
Lc11c:
			call Lc7a4                  ;$c11c cd a4 c7   
			ora a                       ;$c11f b7         
			jz Lc11c                    ;$c120 ca 1c c1   
			lxi h,Lc149                 ;$c123 21 49 c1   
Lc126:
			mov a,m                     ;$c126 7e    
			ora a                       ;$c127 b7         
			jnz Lc131                   ;$c128 c2 31 c1   
			call Lc79a                  ;$c12b cd 9a c7   
			jmp Lc11c                   ;$c12e c3 1c c1
Lc131:
			cmp c                       ;$c131 b9         
			jz Lc140                    ;$c132 ca 40 c1 
Lc135:
			mov a,m                     ;$c135 7e         
			inx h                       ;$c136 23         
			ora a                       ;$c137 b7         
			jnz Lc135                   ;$c138 c2 35 c1   
			inx h                       ;$c13b 23         
			inx h                       ;$c13c 23         
			jmp Lc126                   ;$c13d c3 26 c1  
Lc140:
			inx h                       ;$c140 23         
			call WBUF                   ;$c141 cd a1 0b   		#MAT-OS WBUF
			mov e,m                     ;$c144 5e         
			inx h                       ;$c145 23         
			mov d,m                     ;$c146 56         
			xchg                        ;$c147 eb         
			pchl                        ;$c148 e9 
LC149:
			.textz	"EDIT"
			.word		LC48E
			.textz	"PROG"
			.word		LCBBD
			.textz	"DELETE"
			.word		LC7F3
			.textz	"HELP"
			.word		LC19E
			.textz	"TEST"
			.word		LC84B
			.textz	"READ"
			.word		LC9E5
			.textz	"LPRINT"
			.word		LC1F0
			.textz	"VERIFY"
			.word		LC9F3
			.textz	"CHANGE"
			.word		LC2B8
			.textz	"NEW"
			.word		LC1A4
			.textz	"QUIT"
			.word		LC1B0
			.byte		0

;******************************************************************************

LC19E:
			call WCRLF                  ;$c19e cd 01 0c   		#MAT-OS WCRLF
			jmp LC106                   ;$c1a1 c3 06 c1 
LC1A4:
			call SYSCLS                 ;$c1a4 cd 90 08   
			call LC015                  ;$c1a7 cd 15 c0   
			call LC034                  ;$c1aa cd 34 c0   
			jmp Lc10c                   ;$c1ad c3 0c c1 
LC1B0:			
			call WCRLF                  ;$c1b0 cd 01 0c   
			jmp MATCMD                  ;$c1b3 c3 ac 01   

LC1B6:
			call WCRLF                  ;$c1b6 cd 01 0c   
			mvi a,$ab                   ;$c1b9 3e ab      
			out IO_PRT_CTRL             ;$c1bb d3 e3      
			in IO_PRT_PORT_C            ;$c1bd db e2      
			ani $20                     ;$c1bf e6 20      
			jnz Lc1d3                   ;$c1c1 c2 d3 c1   
			call WCRLF                  ;$c1c4 cd 01 0c   
			lxi h,MAT85_L1e17           ;$c1c7 21 17 1e   
										; ## MAT85 Code: 
										; .textz "*** PRINTER NOT READY ***"

			call WBUF                   ;$c1ca cd a1 0b   
			call WCRLF                  ;$c1cd cd 01 0c   
			jmp Lc10c                   ;$c1d0 c3 0c c1   
Lc1d3:
			mvi a,$7f                   ;$c1d3 3e 7f      
			out IO_PRT_PORT_A           ;$c1d5 d3 e0 
Lc1d7:									; Sprungtabelle?
			in IO_PRT_PORT_C            ;$c1d7 db e2      
			ani $80                     ;$c1d9 e6 80      
			jz Lc1d7                    ;$c1db ca d7 c1   
			lxi h,MAT85_L1e90           ;$c1de 21 90 1e   ## Ausgabe auf Drucker umleiten

										; # MAT85-SystemCode $1e90
										;L1E90	PUSH PSW		;
										;L1E91	IN   $E2		;
        	       						;		ANI  $80		;
            	   						;		JZ   L1E91		;*
               							;		POP  PSW		;
               							;		OUT  $E0		;
               							;		JMP  SERO		;*

			shld SEROUT + 1             ;$c1e1 22 84 fc   
			lda CRTFLG                  ;$c1e4 3a c8 fc   
			sta $d813                   ;$c1e7 32 13 d8   
			mvi a,$01                   ;$c1ea 3e 01      
			sta CRTFLG                  ;$c1ec 32 c8 fc   
			ret                         ;$c1ef c9  
LC1F0:
			call WBUFI                  ;$c1f0 cd b0 0b   
			.textz "? "
Lc1f6:
			call Lc7a4                  ;$c1f6 cd a4 c7   
			ora a                       ;$c1f9 b7         
			jz Lc1f6                    ;$c1fa ca f6 c1   
			mov a,c                     ;$c1fd 79         
			cpi $20                     ;$c1fe fe 20      
			jz Lc23e                    ;$c200 ca 3e c2   
			cpi $0d                     ;$c203 fe 0d      
			jz Lc23e                    ;$c205 ca 3e c2   
			cpi $41                     ;$c208 fe 41      
			jz Lc22c                    ;$c20a ca 2c c2   
			cpi $42                     ;$c20d fe 42      
			jz Lc235                    ;$c20f ca 35 c2   
			cpi $30                     ;$c212 fe 30      
			jc Lc21d                    ;$c214 da 1d c2   
			mvi a,$37                   ;$c217 3e 37      
			cmp c                       ;$c219 b9         
			jnc Lc223                   ;$c21a d2 23 c2 
Lc21d:			  
			call Lc79a                  ;$c21d cd 9a c7   
			jmp Lc1f6                   ;$c220 c3 f6 c1
Lc223:			   
			call Lc1b6                  ;$c223 cd b6 c1   
			call Lc287                  ;$c226 cd 87 c2   
			jmp Lc275                   ;$c229 c3 75 c2 
Lc22c:			  
			call Lc1b6                  ;$c22c cd b6 c1   
			call Lc29e                  ;$c22f cd 9e c2   
			jmp Lc275                   ;$c232 c3 75 c2  
Lc235:			 
			call Lc1b6                  ;$c235 cd b6 c1   
			call Lc2ab                  ;$c238 cd ab c2   
			jmp Lc275                   ;$c23b c3 75 c2  
Lc23e:			 
			call Lc1b6                  ;$c23e cd b6 c1   
			call WBUFI                  ;$c241 cd b0 0b   
			.text 	"        GAL 16V8, 16V8A"
			.byte	$0D,$0A,$0A,$0A,0

			call Lc2ab                  ;$c260 cd ab c2   
			lxi h,GAL_RAM_00            ;$c263 21 00 d0   
			lxi d,GAL_RAM_86            ;$c266 11 60 d8  
Lc269:			 
			call Lc2be                  ;$c269 cd be c2   
			mov a,h                     ;$c26c 7c         
			cpi $d8                     ;$c26d fe d8      
			jnz Lc269                   ;$c26f c2 69 c2   
			call Lc29e                  ;$c272 cd 9e c2 
Lc275:			  
			lxi h,SERO                  ;$c275 21 9f 08   
			shld SEROUT + 1             ;$c278 22 84 fc   
			lda GAL_RAM_80 + $13        ;$c27b 3a 13 d8   
			sta CRTFLG                  ;$c27e 32 c8 fc   
			call WCRLF                  ;$c281 cd 01 0c   
			jmp Lc10c                   ;$c284 c3 0c c1   
Lc287:			
			mov a,c                     ;$c287 79         
			ani $07                     ;$c288 e6 07      
			ori $d0                     ;$c28a f6 d0      
			mov h,a                     ;$c28c 67         
			mov a,c                     ;$c28d 79         
			ani $07                     ;$c28e e6 07      
			rlc                         ;$c290 07         
			rlc                         ;$c291 07         
			rlc                         ;$c292 07         
			adi $60                     ;$c293 c6 60      
			mov e,a                     ;$c295 5f         
			mvi d,$d8                   ;$c296 16 d8      
			mvi l,$00                   ;$c298 2e 00      
			call Lc2be                  ;$c29a cd be c2   
			ret                         ;$c29d c9 
Lc29e:			        
			lxi h,GAL_RAM_80            ;$c29e 21 00 d8   
			call Lc334                  ;$c2a1 cd 34 c3   
			call WBUFI                  ;$c2a4 cd b0 0b   
			ldax b                      ;$c2a7 0a         
			ldax b                      ;$c2a8 0a         
			nop                         ;$c2a9 00         
			ret                         ;$c2aa c9 
Lc2ab:			        
			lxi h,GAL_RAM_84            ;$c2ab 21 40 d8   
			call Lc36f                  ;$c2ae cd 6f c3   
			call WBUFI                  ;$c2b1 cd b0 0b   
			ldax b                      ;$c2b4 0a         
			ldax b                      ;$c2b5 0a         
			nop                         ;$c2b6 00         
			ret                         ;$c2b7 c9 
LC2B8:
			call Lcd2e                  ;$c2b8 cd 2e cd   
			jmp Lc10c                   ;$c2bb c3 0c c1  
Lc2be:			 
			push h                      ;$c2be e5         
			lxi h,Lc37e                 ;$c2bf 21 7e c3   
			call WBUF                   ;$c2c2 cd a1 0b   
			pop h                       ;$c2c5 e1         
			mov a,h                     ;$c2c6 7c         
			ani $07                     ;$c2c7 e6 07      
			ori $30                     ;$c2c9 f6 30      
			call WCHAR                  ;$c2cb cd b6 0b   
			call WBUFI                  ;$c2ce cd b0 0b   
			dcr c                       ;$c2d1 0d         
			ldax b                      ;$c2d2 0a         
			ldax b                      ;$c2d3 0a         
			nop                         ;$c2d4 00         
			push h                      ;$c2d5 e5         
			lxi h,Lc391                 ;$c2d6 21 91 c3   
			call WBUF                   ;$c2d9 cd a1 0b   
			pop h                       ;$c2dc e1 
Lc2dd:			        
			call Lc310                  ;$c2dd cd 10 c3
Lc2e0:			   
			mov a,m                     ;$c2e0 7e         
			inx h                       ;$c2e1 23         
			call WCHAR                  ;$c2e2 cd b6 0b   
			mov a,l                     ;$c2e5 7d         
			ani $03                     ;$c2e6 e6 03      
			jnz Lc2e0                   ;$c2e8 c2 e0 c2   
			call WBLANK                 ;$c2eb cd 8e 0b   
			mov a,l                     ;$c2ee 7d         
			ani $1f                     ;$c2ef e6 1f      
			jnz Lc2e0                   ;$c2f1 c2 e0 c2   
			call WCHARI                 ;$c2f4 cd f7 0b   
			rim                         ;$c2f7 20         
			ldax d                      ;$c2f8 1a         
			inx d                       ;$c2f9 13         
			call WCHAR                  ;$c2fa cd b6 0b   
			call WCRLF                  ;$c2fd cd 01 0c   
			mov a,l                     ;$c300 7d         
			ora a                       ;$c301 b7         
			jz Lc308                    ;$c302 ca 08 c3   
			jmp Lc2dd                   ;$c305 c3 dd c2 
Lc308:			  
			call WBUFI                  ;$c308 cd b0 0b   
			dcr c                       ;$c30b 0d         
			ldax b                      ;$c30c 0a         
			ldax b                      ;$c30d 0a         
			nop                         ;$c30e 00         
			ret                         ;$c30f c9 
Lc310:			        
			push b                      ;$c310 c5         
			mov a,h                     ;$c311 7c         
			ani $07                     ;$c312 e6 07      
			mov b,a                     ;$c314 47         
			mov a,l                     ;$c315 7d         
			ani $e0                     ;$c316 e6 e0      
			ora b                       ;$c318 b0         
			rlc                         ;$c319 07         
			rlc                         ;$c31a 07         
			rlc                         ;$c31b 07         
			push psw                    ;$c31c f5         
			ani $07                     ;$c31d e6 07      
			cnz Lc32b                   ;$c31f c4 2b c3   
			pop psw                     ;$c322 f1         
			call WADEZ                  ;$c323 cd 19 0b   
			call WBLANK                 ;$c326 cd 8e 0b   
			pop b                       ;$c329 c1         
			ret                         ;$c32a c9
Lc32b:			         
			call WBUFI                  ;$c32b cd b0 0b 
			.textz	"    "
			ret                         ;$c333 c9 
Lc334:			        
			push h                      ;$c334 e5         
			lxi h,Lc3cb                 ;$c335 21 cb c3   
			call WBUF                   ;$c338 cd a1 0b   
			pop h                       ;$c33b e1 
Lc33c:			        
			call Lc369                  ;$c33c cd 69 c3   
			call WBUFI                  ;$c33f cd b0 0b   
			.textz	"   "
			
			call Lc369                  ;$c346 cd 69 c3   
			call WBLANK                 ;$c349 cd 8e 0b   
			mvi b,$04                   ;$c34c 06 04 
Lc34e:			     
			call WBLANK                 ;$c34e cd 8e 0b   
			call Lc369                  ;$c351 cd 69 c3   
			call Lc369                  ;$c354 cd 69 c3   
			call Lc369                  ;$c357 cd 69 c3   
			call Lc369                  ;$c35a cd 69 c3   
			dcr b                       ;$c35d 05         
			jnz Lc34e                   ;$c35e c2 4e c3   
			call WBUFI                  ;$c361 cd b0 0b   
			dcr c                       ;$c364 0d         
			ldax b                      ;$c365 0a         
			ldax b                      ;$c366 0a         
			nop                         ;$c367 00         
			ret                         ;$c368 c9 
Lc369:			        
			mov a,m                     ;$c369 7e         
			inx h                       ;$c36a 23         
			call WCHAR                  ;$c36b cd b6 0b   
			ret                         ;$c36e c9 
Lc36f:			        
			push h                      ;$c36f e5         
			lxi h,Lc418                 ;$c370 21 18 c4   
			call WBUF                   ;$c373 cd a1 0b   
			pop h                       ;$c376 e1 
Lc377:			        
			call WBUF                   ;$c377 cd a1 0b   
			call WCRLF                  ;$c37a cd 01 0c   
			ret                         ;$c37d c9 
LC37E:
			.textz	"        AND-ARRAY "
Lc391:
			.text	" NR:    0    4    8    12   16   20   24   28   PTD"
			.byte		$0D,$0A
			.textz	"(OE)"
Lc3cb:
			.text 	"        AUSGANGS-STEUERWORT"
			.byte		$0D,$0A,$0A
			.text	"        SYN AC0 0  AC1  7 0  XOR  7"
			.byte		$0D,$0A

			.textz 	"         "
Lc418:
			.text	"        BAUSTEIN-BEZEICHNUNG"
			.byte		$0D,$0A,$0A
			.textz	"        "
Lc440:
			.byte		$0D,$0A
			.text	"     *** ACHTUNG ***"
			.byte		$0D,$0A
			.text	"BAUSTEIN WURDE SCHON MEHR"
			.byte 		$0D,$0A
			.text	"ALS 100 MAL PROGRAMMIERT"
			.byte		$0D,$0A,0
			
LC48E:			
			call WBUFI                  ;$c48e cd b0 0b  
			.textz 	"? "

Lc494:			        
			call Lc7a4                  ;$c494 cd a4 c7   
			ora a                       ;$c497 b7         
			jz Lc494                    ;$c498 ca 94 c4   
			mov a,c                     ;$c49b 79         
			cpi $0d                     ;$c49c fe 0d      
			cz Lc533                    ;$c49e cc 33 c5   
			cpi $20                     ;$c4a1 fe 20      
			cz Lc533                    ;$c4a3 cc 33 c5   
			cpi $41                     ;$c4a6 fe 41      
			jz Lc682                    ;$c4a8 ca 82 c6   
			cpi $42                     ;$c4ab fe 42      
			jz Lc731                    ;$c4ad ca 31 c7   
			cpi $53                     ;$c4b0 fe 53      
			jz Lc63a                    ;$c4b2 ca 3a c6   
			cpi $30                     ;$c4b5 fe 30      
			jc Lc4c0                    ;$c4b7 da c0 c4   
			mvi a,$37                   ;$c4ba 3e 37      
			cmp c                       ;$c4bc b9         
			jnc Lc4c6                   ;$c4bd d2 c6 c4 
Lc4c0:			  
			call Lc79a                  ;$c4c0 cd 9a c7   
			jmp Lc494                   ;$c4c3 c3 94 c4  
Lc4c6:			 
			mov a,c                     ;$c4c6 79         
			ani $07                     ;$c4c7 e6 07      
			ori $d0                     ;$c4c9 f6 d0      
			mov h,a                     ;$c4cb 67         
			mov a,c                     ;$c4cc 79         
			ani $07                     ;$c4cd e6 07      
			rlc                         ;$c4cf 07         
			rlc                         ;$c4d0 07         
			rlc                         ;$c4d1 07         
			adi $60                     ;$c4d2 c6 60      
			mov e,a                     ;$c4d4 5f         
			mvi d,$d8                   ;$c4d5 16 d8 
Lc4d7:			     
			mvi l,$00                   ;$c4d7 2e 00      
			push h                      ;$c4d9 e5         
			push d                      ;$c4da d5         
			call SYSCLS                 ;$c4db cd 90 08   
			pop d                       ;$c4de d1         
			push d                      ;$c4df d5         
			call Lc2be                  ;$c4e0 cd be c2   
			call WBUFI                  ;$c4e3 cd b0 0b   
			.byte	$0B,$0B,$0B,$0B,$0B,$0B,$0B,$0B,$0B,$0B
			.byte	$09,$09,$09,$09,$09,$09,$09,$09,0

			pop d                       ;$c4f9 d1         
			pop h                       ;$c4fa e1         
			mov b,h                     ;$c4fb 44         
			mov c,e                     ;$c4fc 4b 
Lc4fd:        
			call RCHAR                  ;$c4fd cd e0 0a   
			call GROSS                  ;$c500 cd e9 0e   
			cpi $58                     ;$c503 fe 58      
			jz Lc54b                    ;$c505 ca 4b c5   
			cpi $2d                     ;$c508 fe 2d      
			jz Lc54b                    ;$c50a ca 4b c5   
			cpi $20                     ;$c50d fe 20      
			jz Lc53d                    ;$c50f ca 3d c5   
			cpi $50                     ;$c512 fe 50      
			jz Lc5cb                    ;$c514 ca cb c5   
			cpi $0d                     ;$c517 fe 0d      
			jz Lc537                    ;$c519 ca 37 c5   
			cpi $08                     ;$c51c fe 08      
			jz Lc583                    ;$c51e ca 83 c5   
			cpi $09                     ;$c521 fe 09      
			jz Lc54c                    ;$c523 ca 4c c5   
			cpi $0b                     ;$c526 fe 0b      
			jz Lc5a3                    ;$c528 ca a3 c5   
			cpi $0a                     ;$c52b fe 0a      
			jz Lc5b8                    ;$c52d ca b8 c5   
			jmp Lc4fd                   ;$c530 c3 fd c4 
Lc533:			  
			mvi a,$30                   ;$c533 3e 30      
			mov c,a                     ;$c535 4f         
			ret                         ;$c536 c9 
Lc537:			        
			call SYSCLS                 ;$c537 cd 90 08   
			jmp Lc10c                   ;$c53a c3 0c c1 
Lc53d:			  
			mov a,h                     ;$c53d 7c         
			cpi $d7                     ;$c53e fe d7      
			jz Lc682                    ;$c540 ca 82 c6   
			mov a,c                     ;$c543 79         
			adi $08                     ;$c544 c6 08      
			mov e,a                     ;$c546 5f         
			inr h                       ;$c547 24         
			jmp Lc4d7                   ;$c548 c3 d7 c4 
Lc54b:			  
			mov m,a                     ;$c54b 77 
Lc54c:			        
			inx h                       ;$c54c 23         
			call WCHAR                  ;$c54d cd b6 0b   
			call Lc559                  ;$c550 cd 59 c5   
			cz Lc566                    ;$c553 cc 66 c5   
			jmp Lc4fd                   ;$c556 c3 fd c4 
Lc559:			  
			mov a,l                     ;$c559 7d         
			ani $1f                     ;$c55a e6 1f      
			rz                          ;$c55c c8         
			ani $03                     ;$c55d e6 03      
			rnz                         ;$c55f c0         
			call WBLANK                 ;$c560 cd 8e 0b   
			ori $ff                     ;$c563 f6 ff      
			ret                         ;$c565 c9  
Lc566:			       
			mov a,b                     ;$c566 78         
			cmp h                       ;$c567 bc         
			jc Lc57d                    ;$c568 da 7d c5   
			call WBUFI                  ;$c56b cd b0 0b   
			.byte	$09,$09,$09,$0D,$0A
			.byte	$09,$09,$09,$09,$09,$09,$09,$09,0
			
			ret                         ;$c57c c9 
Lc57d:			        
			dcx h                       ;$c57d 2b         
			call WCHARI                 ;$c57e cd f7 0b   
			.byte $08                   ;$c581 08         
			ret                         ;$c582 c9 
Lc583:			        
			push psw                    ;$c583 f5         
			mov a,l                     ;$c584 7d         
			ani $1f                     ;$c585 e6 1f      
			jnz Lc58e                   ;$c587 c2 8e c5 
Lc58a:			  
			pop psw                     ;$c58a f1         
			jmp Lc4fd                   ;$c58b c3 fd c4  
Lc58e:			 
			pop psw                     ;$c58e f1         
			call WCHAR                  ;$c58f cd b6 0b   
			dcx h                       ;$c592 2b         
			push psw                    ;$c593 f5         
			mov a,l                     ;$c594 7d         
			ani $03                     ;$c595 e6 03      
			cpi $03                     ;$c597 fe 03      
			jnz Lc58a                   ;$c599 c2 8a c5   
			pop psw                     ;$c59c f1         
			call WCHAR                  ;$c59d cd b6 0b   
			jmp Lc4fd                   ;$c5a0 c3 fd c4  
Lc5a3:			 
			call Lc5a9                  ;$c5a3 cd a9 c5   
			jmp Lc4fd                   ;$c5a6 c3 fd c4 
Lc5a9:			  
			mov a,l                     ;$c5a9 7d         
			ani $e0                     ;$c5aa e6 e0      
			rz                          ;$c5ac c8         
			mov a,l                     ;$c5ad 7d         
			sui $20                     ;$c5ae d6 20      
			mov l,a                     ;$c5b0 6f         
			call WCHARI                 ;$c5b1 cd f7 0b   
			dcx b                       ;$c5b4 0b         
			ori $ff                     ;$c5b5 f6 ff      
			ret                         ;$c5b7 c9
Lc5b8:			         
			mov a,l                     ;$c5b8 7d         
			ani $e0                     ;$c5b9 e6 e0      
			cpi $e0                     ;$c5bb fe e0      
			jz Lc4fd                    ;$c5bd ca fd c4   
			mov a,l                     ;$c5c0 7d         
			adi $20                     ;$c5c1 c6 20      
			mov l,a                     ;$c5c3 6f         
			call WCHARI                 ;$c5c4 cd f7 0b   
			ldax b                      ;$c5c7 0a         
			jmp Lc4fd                   ;$c5c8 c3 fd c4
Lc5cb:			   
			inx h                       ;$c5cb 23         
			call WCHARI                 ;$c5cc cd f7 0b   
			dad b                       ;$c5cf 09         
			call Lc559                  ;$c5d0 cd 59 c5   
			jnz Lc5cb                   ;$c5d3 c2 cb c5   
			dcx h                       ;$c5d6 2b 
Lc5d7:			        
			call Lc5a9                  ;$c5d7 cd a9 c5   
			jnz Lc5d7                   ;$c5da c2 d7 c5   
			call WBLANK                 ;$c5dd cd 8e 0b   
			call WBLANK                 ;$c5e0 cd 8e 0b 
Lc5e3:			  
			call RCHAR                  ;$c5e3 cd e0 0a   
			call GROSS                  ;$c5e6 cd e9 0e   
			cpi $58                     ;$c5e9 fe 58      
			jz Lc60a                    ;$c5eb ca 0a c6   
			cpi $2d                     ;$c5ee fe 2d      
			jz Lc60a                    ;$c5f0 ca 0a c6   
			cpi $0b                     ;$c5f3 fe 0b      
			jz Lc628                    ;$c5f5 ca 28 c6   
			cpi $0a                     ;$c5f8 fe 0a      
			jz Lc60a                    ;$c5fa ca 0a c6   
			cpi $20                     ;$c5fd fe 20      
			jz Lc53d                    ;$c5ff ca 3d c5   
			cpi $0d                     ;$c602 fe 0d      
			jz Lc537                    ;$c604 ca 37 c5   
			jmp Lc5e3                   ;$c607 c3 e3 c5  
Lc60a:			 
			call WCHAR                  ;$c60a cd b6 0b   
			cpi $0a                     ;$c60d fe 0a      
			jz Lc619                    ;$c60f ca 19 c6   
			stax d                      ;$c612 12         
			call WBUFI                  ;$c613 cd b0 0b 
			.byte	$08,$0A,0
Lc619:			

			inx d                       ;$c619 13         
			mov a,e                     ;$c61a 7b         
			ani $07                     ;$c61b e6 07      
			jnz Lc5e3                   ;$c61d c2 e3 c5   
			call WCHARI                 ;$c620 cd f7 0b   
			dcx b                       ;$c623 0b         
			dcx d                       ;$c624 1b         
			jmp Lc5e3                   ;$c625 c3 e3 c5 
Lc628:			  
			push b                      ;$c628 c5         
			mov a,c                     ;$c629 79         
			inr a                       ;$c62a 3c         
			mov c,a                     ;$c62b 4f         
			mov a,e                     ;$c62c 7b         
			sub c                       ;$c62d 91         
			pop b                       ;$c62e c1         
			jc Lc5e3                    ;$c62f da e3 c5   
			call WCHARI                 ;$c632 cd f7 0b   
			dcx b                       ;$c635 0b         
			dcx d                       ;$c636 1b         
			jmp Lc5e3                   ;$c637 c3 e3 c5  
Lc63a:			 
			call WBUFI                  ;$c63a cd b0 0b  
			.textz 	"ECURITYBIT "

			lda GAL_RAM_80 + $18        ;$c649 3a 18 d8   
			call WCHAR                  ;$c64c cd b6 0b   
			call WBLANK                 ;$c64f cd 8e 0b  
Lc652:			 
			call RCHAR                  ;$c652 cd e0 0a   
			call GROSS                  ;$c655 cd e9 0e   
			cpi $58                     ;$c658 fe 58      
			jz Lc66a                    ;$c65a ca 6a c6   
			cpi $2d                     ;$c65d fe 2d      
			jz Lc66a                    ;$c65f ca 6a c6   
			cpi $0d                     ;$c662 fe 0d      
			jz Lc678                    ;$c664 ca 78 c6   
			jmp Lc652                   ;$c667 c3 52 c6 
Lc66a:			  
			sta GAL_RAM_80 + $18        ;$c66a 32 18 d8   
			call WCHAR                  ;$c66d cd b6 0b   
			call Lc7b9                  ;$c670 cd b9 c7   
			cpi $00                     ;$c673 fe 00      
			jz Lc652                    ;$c675 ca 52 c6  
Lc678:			 
			call WBUFI                  ;$c678 cd b0 0b   
			.byte	$09,$0D,$0A,0

			jmp Lc10c                   ;$c67f c3 0c c1 
Lc682:			  
			call SYSCLS                 ;$c682 cd 90 08   
			lxi h,GAL_RAM_80            ;$c685 21 00 d8   
			call Lc334                  ;$c688 cd 34 c3   
			call WBUFI                  ;$c68b cd b0 0b   
			.byte $0B,$0B,$09,$09,$09,$09,$09,$09,$09,$09,$09,0

			lxi h,GAL_RAM_80              ;$c69a 21 00 d8 
Lc69d:			  
			call RCHAR                  ;$c69d cd e0 0a   
			cpi $30                     ;$c6a0 fe 30      
			jz Lc6c5                    ;$c6a2 ca c5 c6   
			cpi $31                     ;$c6a5 fe 31      
			jz Lc6c5                    ;$c6a7 ca c5 c6   
			cpi $20                     ;$c6aa fe 20      
			jz Lc731                    ;$c6ac ca 31 c7   
			cpi $08                     ;$c6af fe 08      
			jz Lc700                    ;$c6b1 ca 00 c7   
			cpi $09                     ;$c6b4 fe 09      
			jz Lc6c6                    ;$c6b6 ca c6 c6   
			cpi $0d                     ;$c6b9 fe 0d      
			jnz Lc69d                   ;$c6bb c2 9d c6   
			call WCHARI                 ;$c6be cd f7 0b   
			ldax b                      ;$c6c1 0a         
			jmp Lc10c                   ;$c6c2 c3 0c c1 
Lc6c5:			  
			mov m,a                     ;$c6c5 77  
Lc6c6:			       
			inx h                       ;$c6c6 23         
			call WCHAR                  ;$c6c7 cd b6 0b   
			mvi b,$04                   ;$c6ca 06 04      
			mov a,l                     ;$c6cc 7d         
			cpi $01                     ;$c6cd fe 01      
			jz Lc6ee                    ;$c6cf ca ee c6   
			cpi $02                     ;$c6d2 fe 02      
			jz Lc6ed                    ;$c6d4 ca ed c6   
			cpi $06                     ;$c6d7 fe 06      
			jz Lc6ec                    ;$c6d9 ca ec c6   
			cpi $0a                     ;$c6dc fe 0a      
			jz Lc6ec                    ;$c6de ca ec c6   
			cpi $0e                     ;$c6e1 fe 0e      
			jz Lc6ec                    ;$c6e3 ca ec c6   
			cpi $12                     ;$c6e6 fe 12      
			jz Lc6f8                    ;$c6e8 ca f8 c6   
			dcr b                       ;$c6eb 05  
Lc6ec:			       
			dcr b                       ;$c6ec 05 
Lc6ed:			        
			dcr b                       ;$c6ed 05 
Lc6ee:			        
			dcr b                       ;$c6ee 05         
			jz Lc69d                    ;$c6ef ca 9d c6   
			call WBLANK                 ;$c6f2 cd 8e 0b   
			jmp Lc6ee                   ;$c6f5 c3 ee c6 
Lc6f8:			  
			dcx h                       ;$c6f8 2b         
			call WCHARI                 ;$c6f9 cd f7 0b
			.byte	$08
			jmp Lc69d                   ;$c6fd c3 9d c6 
Lc700:			  
			mov a,l                     ;$c700 7d         
			cpi $00                     ;$c701 fe 00      
			jz Lc69d                    ;$c703 ca 9d c6   
			mvi b,$04                   ;$c706 06 04      
			cpi $01                     ;$c708 fe 01      
			jz Lc724                    ;$c70a ca 24 c7   
			cpi $02                     ;$c70d fe 02      
			jz Lc723                    ;$c70f ca 23 c7   
			cpi $06                     ;$c712 fe 06      
			jz Lc722                    ;$c714 ca 22 c7   
			cpi $0a                     ;$c717 fe 0a      
			jz Lc722                    ;$c719 ca 22 c7   
			cpi $0e                     ;$c71c fe 0e      
			jz Lc722                    ;$c71e ca 22 c7   
			dcr b                       ;$c721 05  
Lc722:
			dcr b                       ;$c722 05  
Lc723:			       
			dcr b                       ;$c723 05  
Lc724:			       
			mvi a,$08                   ;$c724 3e 08      
Lc726:			
			call WCHAR                  ;$c726 cd b6 0b   
			dcr b                       ;$c729 05         
			jnz Lc726                   ;$c72a c2 26 c7   
			dcx h                       ;$c72d 2b         
			jmp Lc69d                   ;$c72e c3 9d c6  
Lc731:			 
			call WCHARI                 ;$c731 cd f7 0b   
			ldax b                      ;$c734 0a         
			call WCRLF                  ;$c735 cd 01 0c   
			lxi h,GAL_RAM_84            ;$c738 21 40 d8   
			call Lc36f                  ;$c73b cd 6f c3   
			call WBUFI                  ;$c73e cd b0 0b  
			.byte	$0B
			.textz 	"        "
			lxi h,GAL_RAM_84            ;$c74b 21 40 d8 
Lc74e:
			call RCHAR                  ;$c74e cd e0 0a   
			call GROSS                  ;$c751 cd e9 0e   
			cpi $08                     ;$c754 fe 08      
			jz Lc78b                    ;$c756 ca 8b c7   
			cpi $09                     ;$c759 fe 09      
			jz Lc778                    ;$c75b ca 78 c7   
			cpi $0d                     ;$c75e fe 0d      
			jnz Lc76a                   ;$c760 c2 6a c7   
			call WCHARI                 ;$c763 cd f7 0b   
			ldax b                      ;$c766 0a         
			jmp Lc10c                   ;$c767 c3 0c c1
Lc76a:			   
			cpi $20                     ;$c76a fe 20      
			jc Lc74e                    ;$c76c da 4e c7   
			mov b,a                     ;$c76f 47         
			mvi a,$5a                   ;$c770 3e 5a      
			cmp b                       ;$c772 b8         
			jc Lc74e                    ;$c773 da 4e c7   
			mov a,b                     ;$c776 78         
			mov m,a                     ;$c777 77 
Lc778:			        
			inx h                       ;$c778 23         
			call WCHAR                  ;$c779 cd b6 0b   
			mov a,l                     ;$c77c 7d         
			cpi $48                     ;$c77d fe 48      
			jnz Lc74e                   ;$c77f c2 4e c7   
			mvi a,$08                   ;$c782 3e 08      
			call WCHAR                  ;$c784 cd b6 0b   
			dcx h                       ;$c787 2b         
			jmp Lc74e                   ;$c788 c3 4e c7  
Lc78b:			 
			mov a,l                     ;$c78b 7d         
			cpi $40                     ;$c78c fe 40      
			jz Lc74e                    ;$c78e ca 4e c7   
			mvi a,$08                   ;$c791 3e 08      
			call WCHAR                  ;$c793 cd b6 0b   
			dcx h                       ;$c796 2b         
			jmp Lc74e                   ;$c797 c3 4e c7 
Lc79a:
			call WBUFI                  ;$c79a cd b0 0b   
			.byte	$08,$20,$08,0

			mvi a,$00                   ;$c7a1 3e 00      
			ret                         ;$c7a3 c9    
Lc7a4:
			call RCHAR                  ;$c7a4 cd e0 0a   
			call GROSS                  ;$c7a7 cd e9 0e   
			mov c,a                     ;$c7aa 4f         
			cpi $0d                     ;$c7ab fe 0d      
			rz                          ;$c7ad c8         
			cpi $20                     ;$c7ae fe 20      
			rz                          ;$c7b0 c8         
			cpi $30                     ;$c7b1 fe 30      
			jc Lc7a4                    ;$c7b3 da a4 c7   
			call WCHAR                  ;$c7b6 cd b6 0b  
Lc7b9:
			call RCHAR                  ;$c7b9 cd e0 0a   
			cpi $7f                     ;$c7bc fe 7f      
			jz Lc79a                    ;$c7be ca 9a c7   
			cpi $20                     ;$c7c1 fe 20      
			rz                          ;$c7c3 c8         
			cpi $0d                     ;$c7c4 fe 0d      
			rz                          ;$c7c6 c8         
			jmp Lc7b9                   ;$c7c7 c3 b9 c7 
Lc7ca:			  
			mvi a,$05                   ;$c7ca 3e 05      
			call Lc7e7                  ;$c7cc cd e7 c7   
			mvi a,$06                   ;$c7cf 3e 06      
			call Lc7e7                  ;$c7d1 cd e7 c7   
			call Lc84a                  ;$c7d4 cd 4a c8   
			mvi a,$04                   ;$c7d7 3e 04      
			call Lc7e7                  ;$c7d9 cd e7 c7   
			ret                         ;$c7dc c9      
Lc7dd:
			mvi a,$04                   ;$c7dd 3e 04      
			call Lc7ef                  ;$c7df cd ef c7   
Lc7e2:
			mvi a,$81                   ;$c7e2 3e 81      
			out IO_GAL_CTRL             ;$c7e4 d3 d3      
			ret                         ;$c7e6 c9     
Lc7e7:
			push psw                    ;$c7e7 f5         
			ori $80                     ;$c7e8 f6 80  
Lc7ea:
			rlc                         ;$c7ea 07         
			out IO_GAL_CTRL             ;$c7eb d3 d3      
			pop psw                     ;$c7ed f1         
			ret                         ;$c7ee c9  
Lc7ef:			       
			push psw                    ;$c7ef f5         
			jmp Lc7ea                   ;$c7f0 c3 ea c7   
LC7F3:
			call Lc86c                  ;$c7f3 cd 6c c8   
			jnc Lc10c                   ;$c7f6 d2 0c c1   
			call Lc7ca                  ;$c7f9 cd ca c7   
			mvi a,$07                   ;$c7fc 3e 07      
			call Lc7e7                  ;$c7fe cd e7 c7   
			mvi a,$39                   ;$c801 3e 39      
			out IO_GAL_PORT_A           ;$c803 d3 d0      
			mvi a,$01                   ;$c805 3e 01      
			out IO_GAL_PORT_B           ;$c807 d3 d1      
			call Lc828                  ;$c809 cd 28 c8   
			call Lcd10                  ;$c80c cd 10 cd   
			call Lc7dd                  ;$c80f cd dd c7   
			call Lc83d                  ;$c812 cd 3d c8   
			lda GAL_RAM_83 + $3         ;$c815 3a 33 d8   
			inr a                       ;$c818 3c         
			jm Lc81f                    ;$c819 fa 1f c8   
			sta GAL_RAM_83 + $3         ;$c81c 32 33 d8 
Lc81f:			  
			call Lc8b4                  ;$c81f cd b4 c8   
			call Lc900                  ;$c822 cd 00 c9   
			jmp Lc10c                   ;$c825 c3 0c c1 
Lc828:
			ori $02                     ;$c828 f6 02      
			out IO_GAL_PORT_B           ;$c82a d3 d1      
			call Lc84a                  ;$c82c cd 4a c8   
			ani $01                     ;$c82f e6 01      
			out IO_GAL_PORT_B           ;$c831 d3 d1      
			ret                         ;$c833 c9 
Lc834:			        
			mvi a,$06                   ;$c834 3e 06      
			call Lc7ef                  ;$c836 cd ef c7   
			call Lc7e7                  ;$c839 cd e7 c7   
			ret                         ;$c83c c9 

Lc83d:									; Zeitschleife (Programmier-Verzoegerung?)	        
			push psw                    ;$c83d f5         
			push b                      ;$c83e c5         
			lxi b,$0350                 ;$c83f 01 50 03
Lc842:			   
			dcx b                       ;$c842 0b         
			mov a,b                     ;$c843 78         
			ora c                       ;$c844 b1         
			jnz Lc842                   ;$c845 c2 42 c8   
			pop b                       ;$c848 c1         
			pop psw                     ;$c849 f1  
Lc84a:			       
			ret                         ;$c84a c9    
LC84B:
			call Lc86c                  ;$c84b cd 6c c8   
			jnc Lc863                   ;$c84e d2 63 c8   
			call Lc7ca                  ;$c851 cd ca c7   
			lxi h,GAL_RAM_85            ;$c854 21 50 d8   
			call Lc960                  ;$c857 cd 60 c9   
			call Lc7dd                  ;$c85a cd dd c7   
			call WCRLF                  ;$c85d cd 01 0c   
			call Lc36f                  ;$c860 cd 6f c3  
Lc863:
			call Lc8c6                  ;$c863 cd c6 c8   
			call WCRLF                  ;$c866 cd 01 0c   
			jmp Lc10c                   ;$c869 c3 0c c1  
Lc86c:
			call Lc7ca                  ;$c86c cd ca c7   
			lxi h,GAL_RAM_83 + $3       ;$c86f 21 33 d8   
			call Lc8ae                  ;$c872 cd ae c8   
			call Lc7dd                  ;$c875 cd dd c7   
			lda GAL_RAM_83 + $5         ;$c878 3a 35 d8   
			cpi $00                     ;$c87b fe 00      
			stc                         ;$c87d 37         
			rz                          ;$c87e c8         
			cpi $1a                     ;$c87f fe 1a      
			stc                         ;$c881 37         
			rz                          ;$c882 c8         
			call WBUFI                  ;$c883 cd b0 0b   
			.byte	$0D,$0A
			.text	"*** KEIN GAL 16V8, ODER 16V8A ***"
			.byte	$0D,$0A,0			

			ora a                       ;$c8ac b7         
			ret                         ;$c8ad c9  
Lc8ae:			       
			push h                      ;$c8ae e5         
			mvi a,$3a                   ;$c8af 3e 3a      
			jmp Lc963                   ;$c8b1 c3 63 c9 
Lc8b4:			  
			call Lc7ca                  ;$c8b4 cd ca c7   
			mvi a,$07                   ;$c8b7 3e 07      
			call Lc7e7                  ;$c8b9 cd e7 c7   
			mvi a,$3a                   ;$c8bc 3e 3a      
			out IO_GAL_PORT_A           ;$c8be d3 d0      
			lxi h,GAL_RAM_83 + $03      ;$c8c0 21 33 d8   
			jmp Lcc9f                   ;$c8c3 c3 9f cc 

Lc8c6:									; Schleifendurchlauf 32768, oder RIM %1000 0000 ?
			lxi b,$7fff                 ;$c8c6 01 ff 7f  
Lc8c9:			 
			rim                         ;$c8c9 20         
			ani $80                     ;$c8ca e6 80      
			jz Lc8d6                    ;$c8cc ca d6 c8   
			dcx b                       ;$c8cf 0b         
			mov a,b                     ;$c8d0 78         
			ora c                       ;$c8d1 b1         
			jnz Lc8c9                   ;$c8d2 c2 c9 c8   
			ret                         ;$c8d5 c9 
Lc8d6:			        
			call RCHAR                  ;$c8d6 cd e0 0a   
			cpi $11                     ;$c8d9 fe 11      
			rnz                         ;$c8db c0         
			call Lc86c                  ;$c8dc cd 6c c8   
			call WBUFI                  ;$c8df cd b0 0b  
			.textz	"        "
			
			lxi h,GAL_RAM_83 + $06      ;$c8eb 21 36 d8   
			mvi b,$04                   ;$c8ee 06 04 
Lc8f0:			     
			mov a,m                     ;$c8f0 7e         
			call WAHEX                  ;$c8f1 cd 6f 0b   
			call WBLANK                 ;$c8f4 cd 8e 0b   
			dcx h                       ;$c8f7 2b         
			dcr b                       ;$c8f8 05         
			jnz Lc8f0                   ;$c8f9 c2 f0 c8   
			call WCRLF                  ;$c8fc cd 01 0c   
			ret                         ;$c8ff c9  
Lc900:			       
			call Lc7ca                  ;$c900 cd ca c7   
			mvi h,$00                   ;$c903 26 00 
Lc905:			     
			mov a,h                     ;$c905 7c         
			out IO_GAL_PORT_A           ;$c906 d3 d0      
			call Lc834                  ;$c908 cd 34 c8   
			mvi b,$40                   ;$c90b 06 40      
			call Lc936                  ;$c90d cd 36 c9   
			mov a,h                     ;$c910 7c         
			cpi $1f                     ;$c911 fe 1f      
			jz Lc91a                    ;$c913 ca 1a c9   
			inr h                       ;$c916 24         
			jmp Lc905                   ;$c917 c3 05 c9 
Lc91a:			  
			mvi a,$3c                   ;$c91a 3e 3c      
			out IO_GAL_PORT_A           ;$c91c d3 d0      
			call Lc834                  ;$c91e cd 34 c8   
			mvi b,$52                   ;$c921 06 52      
			call Lc936                  ;$c923 cd 36 c9   
			mvi a,$20                   ;$c926 3e 20      
			out IO_GAL_PORT_A           ;$c928 d3 d0      
			call Lc834                  ;$c92a cd 34 c8   
			mvi b,$40                   ;$c92d 06 40      
			call Lc936                  ;$c92f cd 36 c9   
			call Lc7dd                  ;$c932 cd dd c7   
			ret                         ;$c935 c9 
Lc936:			        
			call Lc985                  ;$c936 cd 85 c9   
			ani $01                     ;$c939 e6 01      
			jz Lc943                    ;$c93b ca 43 c9   
			dcr b                       ;$c93e 05         
			jnz Lc936                   ;$c93f c2 36 c9   
			ret                         ;$c942 c9 
Lc943:			        
			call Lc7dd                  ;$c943 cd dd c7   
			call WBUFI                  ;$c946 cd b0 0b   
			.byte	$0D,$0A,$0A
			.text 	"*** DEFEKT ***"
			.byte	$0D,$0A,0

			jmp Lc10c                   ;$c95d c3 0c c1 
Lc960:			  
			push h                      ;$c960 e5         
			mvi a,$20                   ;$c961 3e 20 
Lc963:			     
			out IO_GAL_PORT_A           ;$c963 d3 d0      
			call Lc834                  ;$c965 cd 34 c8   
			mvi c,$08                   ;$c968 0e 08 
Lc96a:			     
			mvi d,$00                   ;$c96a 16 00      
			mvi b,$08                   ;$c96c 06 08   
Lc96e:			   
			call Lc985                  ;$c96e cd 85 c9   
			ani $01                     ;$c971 e6 01      
			ora d                       ;$c973 b2         
			rrc                         ;$c974 0f         
			mov d,a                     ;$c975 57         
			dcr b                       ;$c976 05         
			jnz Lc96e                   ;$c977 c2 6e c9   
			mov m,a                     ;$c97a 77         
			inx h                       ;$c97b 23         
			dcr c                       ;$c97c 0d         
			jnz Lc96a                   ;$c97d c2 6a c9   
			mvi a,$00                   ;$c980 3e 00      
			mov m,a                     ;$c982 77         
			pop h                       ;$c983 e1         
			ret                         ;$c984 c9 
Lc985:			        
			in IO_GAL_PORT_C            ;$c985 db d2      
			push psw                    ;$c987 f5         
			mvi a,$00                   ;$c988 3e 00      
			call Lc828                  ;$c98a cd 28 c8   
			pop psw                     ;$c98d f1         
			ret                         ;$c98e c9 
Lc98f:			        
			mov a,l                     ;$c98f 7d         
			adi $20                     ;$c990 c6 20      
			mov l,a                     ;$c992 6f         
			jnc Lc997                   ;$c993 d2 97 c9   
			inr h                       ;$c996 24 
Lc997:			        
			mov a,h                     ;$c997 7c         
			cpi $d8                     ;$c998 fe d8      
			rnz                         ;$c99a c0         
			mov a,l                     ;$c99b 7d         
			adi $01                     ;$c99c c6 01      
			ani $1f                     ;$c99e e6 1f      
			rz                          ;$c9a0 c8         
			mov l,a                     ;$c9a1 6f         
			mvi h,$d0                   ;$c9a2 26 d0      
			inr e                       ;$c9a4 1c         
			ret                         ;$c9a5 c9 
Lc9a6:			        
			mov a,e                     ;$c9a6 7b         
			out IO_GAL_PORT_A           ;$c9a7 d3 d0      
			call Lc834                  ;$c9a9 cd 34 c8  
Lc9ac:			 
			call Lc985                  ;$c9ac cd 85 c9   
			ani $01                     ;$c9af e6 01      
			jnz Lc9b9                   ;$c9b1 c2 b9 c9   
			mvi b,$58                   ;$c9b4 06 58      
			jmp Lc9bb                   ;$c9b6 c3 bb c9 
Lc9b9:			  
			mvi b,$2d                   ;$c9b9 06 2d
Lc9bb:			      
			lda GAL_RAM_80 + $16        ;$c9bb 3a 16 d8   
			cpi $52                     ;$c9be fe 52      
			mov a,b                     ;$c9c0 78         
			jz Lc9d2                    ;$c9c1 ca d2 c9   
			cmp m                       ;$c9c4 be         
			rz                          ;$c9c5 c8         
			cpi $58                     ;$c9c6 fe 58      
			jnz Lc9d0                   ;$c9c8 c2 d0 c9   
			mvi a,$31                   ;$c9cb 3e 31      
			jmp Lc9d2                   ;$c9cd c3 d2 c9 
Lc9d0:			  
			mvi a,$30                   ;$c9d0 3e 30 
Lc9d2:			     
			mov m,a                     ;$c9d2 77         
			sta GAL_RAM_80 + $17        ;$c9d3 32 17 d8   
			ret                         ;$c9d6 c9 
Lc9d7:			        
			call Lc985                  ;$c9d7 cd 85 c9   
			ani $01                     ;$c9da e6 01      
			ori $30                     ;$c9dc f6 30      
			mov m,a                     ;$c9de 77         
			inx h                       ;$c9df 23         
			dcr b                       ;$c9e0 05         
			jnz Lc9d7                   ;$c9e1 c2 d7 c9   
			ret                         ;$c9e4 c9  
LC9E5:
			call Lc9eb                  ;$c9e5 cd eb c9   
			jmp Lc10c                   ;$c9e8 c3 0c c1 
Lc9eb:			  
			mvi a,$52                   ;$c9eb 3e 52      
			sta GAL_RAM_80 + $16        ;$c9ed 32 16 d8   
			jmp Lca09                   ;$c9f0 c3 09 ca  
LC9F3:
			call Lc9f9                  ;$c9f3 cd f9 c9   
			jmp Lc10c                   ;$c9f6 c3 0c c1 
Lc9f9:			  
			call WCRLF                  ;$c9f9 cd 01 0c   
			call Lcd2e                  ;$c9fc cd 2e cd 
Lc9ff:			  
			mvi a,$56                   ;$c9ff 3e 56      
			sta GAL_RAM_80 + $16        ;$ca01 32 16 d8   
			mvi a,$45                   ;$ca04 3e 45      
			sta GAL_RAM_80 + $17        ;$ca06 32 17 d8  
Lca09:			 
			call Lc86c                  ;$ca09 cd 6c c8   
			rnc                         ;$ca0c d0         
			lxi h,GAL_RAM_00            ;$ca0d 21 00 d0   
			call Lc7ca                  ;$ca10 cd ca c7   
			mvi a,$00                   ;$ca13 3e 00      
			mov e,a                     ;$ca15 5f         
			sta $d814                   ;$ca16 32 14 d8  
Lca19:			 
			call Lc9a6                  ;$ca19 cd a6 c9 
Lca1c:			  
			call Lc98f                  ;$ca1c cd 8f c9   
			jz Lca36                    ;$ca1f ca 36 ca   
			lda $d814                   ;$ca22 3a 14 d8   
			cmp e                       ;$ca25 bb         
			jnz Lca2f                   ;$ca26 c2 2f ca   
			call Lc9ac                  ;$ca29 cd ac c9   
			jmp Lca1c                   ;$ca2c c3 1c ca 
Lca2f:			  
			mov a,e                     ;$ca2f 7b         
			sta GAL_RAM_80 + $14        ;$ca30 32 14 d8   
			jmp Lca19                   ;$ca33 c3 19 ca  
Lca36:			 
			mvi a,$3c                   ;$ca36 3e 3c      
			out IO_GAL_PORT_A           ;$ca38 d3 d0      
			call Lc834                  ;$ca3a cd 34 c8   
			lda GAL_RAM_83 + $05        ;$ca3d 3a 35 d8   
			ora a                       ;$ca40 b7         
			jnz Lca5c                   ;$ca41 c2 5c ca   
			call Lca84                  ;$ca44 cd 84 ca   
			call Lca92                  ;$ca47 cd 92 ca   
			call Lca9e                  ;$ca4a cd 9e ca   
			call Lcaa7                  ;$ca4d cd a7 ca   
			call Lcab3                  ;$ca50 cd b3 ca   
			call Lcabc                  ;$ca53 cd bc ca   
			call Lcac5                  ;$ca56 cd c5 ca   
			jmp Lcad3                   ;$ca59 c3 d3 ca 
Lca5c:			  
			call Lca92                  ;$ca5c cd 92 ca   
			call Lca9e                  ;$ca5f cd 9e ca   
			call Lca84                  ;$ca62 cd 84 ca   
			call Lcac5                  ;$ca65 cd c5 ca   
			call Lcaa7                  ;$ca68 cd a7 ca   
			call Lcab3                  ;$ca6b cd b3 ca   
			call Lcabc                  ;$ca6e cd bc ca   
			jmp Lcad3                   ;$ca71 c3 d3 ca
Lca74:			   
			lda $d816                   ;$ca74 3a 16 d8   
			cpi $56                     ;$ca77 fe 56      
			jz Lca80                    ;$ca79 ca 80 ca   
			lxi h,GAL_RAM_80            ;$ca7c 21 00 d8   
			ret                         ;$ca7f c9 
Lca80:			        
			lxi h,GAL_RAM_80 + $20      ;$ca80 21 20 d8   
			ret                         ;$ca83 c9 
Lca84:			        
			lxi h,GAL_RAM_86            ;$ca84 21 60 d8  
Lca87:			 
			call Lc9ac                  ;$ca87 cd ac c9   
			inx h                       ;$ca8a 23         
			mov a,l                     ;$ca8b 7d         
			cpi $80                     ;$ca8c fe 80      
			jnz Lca87                   ;$ca8e c2 87 ca   
			ret                         ;$ca91 c9 
Lca92:			        
			call Lca74                  ;$ca92 cd 74 ca   
			mov a,l                     ;$ca95 7d         
			adi $0a                     ;$ca96 c6 0a      
			mov l,a                     ;$ca98 6f         
			mvi b,$04                   ;$ca99 06 04      
			jmp Lc9d7                   ;$ca9b c3 d7 c9 
Lca9e:
			mov a,l                     ;$ca9e 7d         
			sui $0d                     ;$ca9f d6 0d      
			mov l,a                     ;$caa1 6f         
			mvi b,$05                   ;$caa2 06 05      
			jmp Lc9d7                   ;$caa4 c3 d7 c9 
Lcaa7:			  
			call Lca74                  ;$caa7 cd 74 ca   
			mov a,l                     ;$caaa 7d         
			adi $06                     ;$caab c6 06      
			mov l,a                     ;$caad 6f         
			mvi b,$04                   ;$caae 06 04      
			jmp Lc9d7                   ;$cab0 c3 d7 c9 
Lcab3:			  
			mov a,l                     ;$cab3 7d         
			sui $0a                     ;$cab4 d6 0a      
			mov l,a                     ;$cab6 6f         
			mvi b,$01                   ;$cab7 06 01      
			jmp Lc9d7                   ;$cab9 c3 d7 c9 
Lcabc:			  
			mov a,l                     ;$cabc 7d         
			adi $0d                     ;$cabd c6 0d      
			mov l,a                     ;$cabf 6f         
			mvi b,$04                   ;$cac0 06 04      
			jmp Lc9d7                   ;$cac2 c3 d7 c9 
Lcac5:			  
			lxi h,GAL_RAM_88            ;$cac5 21 80 d8 
Lcac8:			  
			call Lc9ac                  ;$cac8 cd ac c9   
			inx h                       ;$cacb 23         
			mov a,l                     ;$cacc 7d         
			cpi $a0                     ;$cacd fe a0      
			jnz Lcac8                   ;$cacf c2 c8 ca   
			ret                         ;$cad2 c9 
Lcad3:			        
			lda GAL_RAM_80 + $16        ;$cad3 3a 16 d8   
			cpi $56                     ;$cad6 fe 56      
			jz Lcae1                    ;$cad8 ca e1 ca   
			lxi h,GAL_RAM_84            ;$cadb 21 40 d8   
			jmp Lcae4                   ;$cade c3 e4 ca 
Lcae1:  
			lxi h,GAL_RAM_85            ;$cae1 21 50 d8 
Lcae4:			  
			call Lc960                  ;$cae4 cd 60 c9   
			lda GAL_RAM_80 + $16        ;$cae7 3a 16 d8   
			cpi $52                     ;$caea fe 52      
			jz Lcbb2                    ;$caec ca b2 cb   
			mvi a,$41                   ;$caef 3e 41      
			sta GAL_RAM_80 + $19        ;$caf1 32 19 d8   
			lxi h,GAL_RAM_80            ;$caf4 21 00 d8   
			lxi b,GAL_RAM_80 + $20      ;$caf7 01 20 d8   
			mvi d,$12                   ;$cafa 16 12
Lcafc:			      
			ldax b                      ;$cafc 0a         
			cmp m                       ;$cafd be         
			mvi a,$2e                   ;$cafe 3e 2e      
			jz Lcb09                    ;$cb00 ca 09 cb   
			sta GAL_RAM_80 + $19        ;$cb03 32 19 d8   
			jmp Lcb0a                   ;$cb06 c3 0a cb  
Lcb09:			 
			stax b                      ;$cb09 02 
Lcb0a:			        
			dcr d                       ;$cb0a 15         
			jz Lcb13                    ;$cb0b ca 13 cb   
			inx h                       ;$cb0e 23         
			inx b                       ;$cb0f 03         
			jmp Lcafc                   ;$cb10 c3 fc ca 
Lcb13:			  
			mvi a,$42                   ;$cb13 3e 42      
			sta GAL_RAM_80 + $1a        ;$cb15 32 1a d8   
			lxi h,GAL_RAM_84            ;$cb18 21 40 d8   
			lxi b,GAL_RAM_85            ;$cb1b 01 50 d8   
			mvi d,$08                   ;$cb1e 16 08
Lcb20:			      
			ldax b                      ;$cb20 0a         
			cmp m                       ;$cb21 be         
			mvi a,$2e                   ;$cb22 3e 2e      
			jz Lcb2d                    ;$cb24 ca 2d cb   
			sta GAL_RAM_80 + $1a        ;$cb27 32 1a d8   
			jmp Lcb2e                   ;$cb2a c3 2e cb
Lcb2d:			   
			stax b                      ;$cb2d 02 
Lcb2e:			        
			dcr d                       ;$cb2e 15         
			jz Lcb37                    ;$cb2f ca 37 cb   
			inx h                       ;$cb32 23         
			inx b                       ;$cb33 03         
			jmp Lcb20                   ;$cb34 c3 20 cb 
Lcb37:			  
			lda GAL_RAM_80 + $17        ;$cb37 3a 17 d8   
			cpi $45                     ;$cb3a fe 45      
			jz Lcb66                    ;$cb3c ca 66 cb   
			call WBUFI                  ;$cb3f cd b0 0b  
			.byte	$0D,$0A,$0A
			.text	"    *** AND-ARRAY UNGLEICH ***"
			.byte	$0D,$0A,0

LCB66:
			lda GAL_RAM_80 + $19        ;$cb66 3a 19 d8   
			cpi $41                     ;$cb69 fe 41      
			jz Lcb8f                    ;$cb6b ca 8f cb   
			call WBUFI                  ;$cb6e cd b0 0b   
			dcr c                       ;$cb71 0d         
			ldax b                      ;$cb72 0a         
			ldax b                      ;$cb73 0a         
			nop                         ;$cb74 00         
			lxi h,GAL_RAM_80            ;$cb75 21 00 d8   
			call Lc334                  ;$cb78 cd 34 c3   
			call WBUFI                  ;$cb7b cd b0 0b  
			.byte	$0B
			.textz	"     IC  "

			lxi h,GAL_RAM_80 + $20      ;$cb89 21 20 d8   
			call Lc33c                  ;$cb8c cd 3c c3  
Lcb8f:			 
			lda GAL_RAM_80 + $1a        ;$cb8f 3a 1a d8   
			cpi $42                     ;$cb92 fe 42      
			jz Lcbb2                    ;$cb94 ca b2 cb   
			call WCRLF                  ;$cb97 cd 01 0c   
			lxi h,GAL_RAM_84            ;$cb9a 21 40 d8   
			call Lc36f                  ;$cb9d cd 6f c3   
			call WBUFI                  ;$cba0 cd b0 0b
			.textz	"     IC "

			lxi h,GAL_RAM_85            ;$cbac 21 50 d8   
			call Lc377                  ;$cbaf cd 77 c3 
Lcbb2:			  
			call Lc7dd                  ;$cbb2 cd dd c7   
			ret                         ;$cbb5 c9 
Lcbb6:			        
			lxi h,Lc440                 ;$cbb6 21 40 c4   
			call WBUF                   ;$cbb9 cd a1 0b   
			ret                         ;$cbbc c9
LCBBD:
			call Lc86c                  ;$cbbd cd 6c c8   
			jnc Lc10c                   ;$cbc0 d2 0c c1   
			lxi h,GAL_RAM_83 + $03      ;$cbc3 21 33 d8   
			mvi a,$64                   ;$cbc6 3e 64      
			sub m                       ;$cbc8 96         
			cc Lcbb6                    ;$cbc9 dc b6 cb   
			call WBUFI                  ;$cbcc cd b0 0b 
			.byte	$0D,$0A
			.textz	"      CHANGE"

			call Lcd2e                  ;$cbde cd 2e cd   
			call WBUFI                  ;$cbe1 cd b0 0b  
			.textz	", PROG"

			call Lc7ca                  ;$cbeb cd ca c7   
			mvi a,$07                   ;$cbee 3e 07      
			call Lc7e7                  ;$cbf0 cd e7 c7   
			lxi h,GAL_RAM_00            ;$cbf3 21 00 d0   
			mvi a,$00                   ;$cbf6 3e 00      
			mov e,a                     ;$cbf8 5f         
			sta GAL_RAM_80 + $14        ;$cbf9 32 14 d8 
Lcbfc:			  
			mov a,e                     ;$cbfc 7b         
			out IO_GAL_PORT_A           ;$cbfd d3 d0 
Lcbff:			     
			call Lcd25                  ;$cbff cd 25 cd   
			call Lc98f                  ;$cc02 cd 8f c9   
			jz Lcc19                    ;$cc05 ca 19 cc   
			lda GAL_RAM_80 + $14        ;$cc08 3a 14 d8   
			cmp e                       ;$cc0b bb         
			jz Lcbff                    ;$cc0c ca ff cb   
			call Lcd10                  ;$cc0f cd 10 cd   
			mov a,e                     ;$cc12 7b         
			sta GAL_RAM_80 + $14        ;$cc13 32 14 d8   
			jmp Lcbfc                   ;$cc16 c3 fc cb 
Lcc19:			  
			call Lcd10                  ;$cc19 cd 10 cd   
			mvi a,$3c                   ;$cc1c 3e 3c      
			out IO_GAL_PORT_A           ;$cc1e d3 d0      
			lda $d835                   ;$cc20 3a 35 d8   
			ora a                       ;$cc23 b7         
			jnz Lcc3f                   ;$cc24 c2 3f cc   
			call Lcc57                  ;$cc27 cd 57 cc   
			call Lcc5f                  ;$cc2a cd 5f cc   
			call Lcc67                  ;$cc2d cd 67 cc   
			call Lcc6f                  ;$cc30 cd 6f cc   
			call Lcc77                  ;$cc33 cd 77 cc   
			call Lcc7f                  ;$cc36 cd 7f cc   
			call Lcc87                  ;$cc39 cd 87 cc   
			jmp Lcc8f                   ;$cc3c c3 8f cc 
Lcc3f:			  
			call Lcc5f                  ;$cc3f cd 5f cc   
			call Lcc67                  ;$cc42 cd 67 cc   
			call Lcc57                  ;$cc45 cd 57 cc   
			call Lcc87                  ;$cc48 cd 87 cc   
			call Lcc6f                  ;$cc4b cd 6f cc   
			call Lcc77                  ;$cc4e cd 77 cc   
			call Lcc7f                  ;$cc51 cd 7f cc   
			jmp Lcc8f                   ;$cc54 c3 8f cc 
Lcc57:			  
			lxi h,GAL_RAM_86            ;$cc57 21 60 d8   
			mvi b,$20                   ;$cc5a 06 20      
			jmp Lcd1c                   ;$cc5c c3 1c cd  
Lcc5f:			 
			lxi h,GAL_RAM_80 + $0a      ;$cc5f 21 0a d8   
			mvi b,$04                   ;$cc62 06 04      
			jmp Lcd1c                   ;$cc64 c3 1c cd  
Lcc67:			 
			lxi h,GAL_RAM_80 + $01      ;$cc67 21 01 d8   
			mvi b,$05                   ;$cc6a 06 05      
			jmp Lcd1c                   ;$cc6c c3 1c cd 
Lcc6f:			  
			lxi h,GAL_RAM_80 + $06      ;$cc6f 21 06 d8   
			mvi b,$04                   ;$cc72 06 04      
			jmp Lcd1c                   ;$cc74 c3 1c cd
Lcc77:			   
			lxi h,GAL_RAM_80            ;$cc77 21 00 d8   
			mvi b,$01                   ;$cc7a 06 01      
			jmp Lcd1c                   ;$cc7c c3 1c cd
Lcc7f:			   
			lxi h,GAL_RAM_80 + $0e      ;$cc7f 21 0e d8   
			mvi b,$04                   ;$cc82 06 04      
			jmp Lcd1c                   ;$cc84 c3 1c cd
Lcc87:			   
			lxi h,GAL_RAM_88            ;$cc87 21 80 d8   
			mvi b,$20                   ;$cc8a 06 20      
			jmp Lcd1c                   ;$cc8c c3 1c cd 
Lcc8f:			  
			call Lcd10                  ;$cc8f cd 10 cd   
			call Lcc98                  ;$cc92 cd 98 cc   
			jmp Lccba                   ;$cc95 c3 ba cc 
Lcc98:			  
			mvi a,$20                   ;$cc98 3e 20      
			out IO_GAL_PORT_A           ;$cc9a d3 d0      
			lxi h,GAL_RAM_84            ;$cc9c 21 40 d8  
Lcc9f:			 
			mvi c,$08                   ;$cc9f 0e 08 
Lcca1:			     
			mvi b,$08                   ;$cca1 06 08      
			mov a,m                     ;$cca3 7e
Lcca4:			         
			push psw                    ;$cca4 f5         
			call Lcd26                  ;$cca5 cd 26 cd   
			pop psw                     ;$cca8 f1         
			rrc                         ;$cca9 0f         
			dcr b                       ;$ccaa 05         
			jnz Lcca4                   ;$ccab c2 a4 cc   
			inx h                       ;$ccae 23         
			dcr c                       ;$ccaf 0d         
			jnz Lcca1                   ;$ccb0 c2 a1 cc   
			call Lcd10                  ;$ccb3 cd 10 cd   
			call Lc7dd                  ;$ccb6 cd dd c7   
			ret                         ;$ccb9 c9 
Lccba:			        
			call WBUFI                  ;$ccba cd b0 0b   
			.textz	", VERIFY"

			call Lc9ff                  ;$ccc6 cd ff c9   
			lda GAL_RAM_80 + $17        ;$ccc9 3a 17 d8   
			cpi $45                     ;$cccc fe 45      
			jnz Lc10c                   ;$ccce c2 0c c1   
			lda GAL_RAM_80 + $19        ;$ccd1 3a 19 d8   
			cpi $41                     ;$ccd4 fe 41      
			jnz Lc10c                   ;$ccd6 c2 0c c1   
			lda GAL_RAM_80 + $1a        ;$ccd9 3a 1a d8   
			cpi $42                     ;$ccdc fe 42      
			jnz Lc10c                   ;$ccde c2 0c c1   
			lda GAL_RAM_80 + $18        ;$cce1 3a 18 d8   
			cpi $58                     ;$cce4 fe 58      
			jnz Lc10c                   ;$cce6 c2 0c c1   
			push psw                    ;$cce9 f5         
			call WBUFI                  ;$ccea cd b0 0b 
			.text	", PROGS"
			.byte $0D,$0A,0

LCCF7:
			call Lc7ca                  ;$ccf7 cd ca c7   
			mvi a,$07                   ;$ccfa 3e 07      
			call Lc7e7                  ;$ccfc cd e7 c7   
			mvi a,$3d                   ;$ccff 3e 3d      
			out IO_GAL_PORT_A           ;$cd01 d3 d0      
			pop psw                     ;$cd03 f1         
			call Lcd26                  ;$cd04 cd 26 cd   
			call Lcd10                  ;$cd07 cd 10 cd   
			call Lc7dd                  ;$cd0a cd dd c7   
			jmp Lc10c                   ;$cd0d c3 0c c1 
Lcd10:
			mvi a,$06                   ;$cd10 3e 06      
			call Lc7ef                  ;$cd12 cd ef c7   
			call Lc83d                  ;$cd15 cd 3d c8   
			call Lc7e7                  ;$cd18 cd e7 c7   
			ret                         ;$cd1b c9 
Lcd1c:			        
			call Lcd25                  ;$cd1c cd 25 cd   
			inx h                       ;$cd1f 23         
			dcr b                       ;$cd20 05         
			jnz Lcd1c                   ;$cd21 c2 1c cd   
			ret                         ;$cd24 c9 
Lcd25:			        
			mov a,m                     ;$cd25 7e  
Lcd26:
			ani $01                     ;$cd26 e6 01      
			out IO_GAL_PORT_B           ;$cd28 d3 d1      
			call Lc828                  ;$cd2a cd 28 c8   
			ret                         ;$cd2d c9 
Lcd2e:			        
			lxi h,GAL_RAM_00            ;$cd2e 21 00 d0 
Lcd31:
			call Lcd49                  ;$cd31 cd 49 cd   
			inx h                       ;$cd34 23         
			mov a,h                     ;$cd35 7c         
			cpi $d8                     ;$cd36 fe d8      
			jnz Lcd31                   ;$cd38 c2 31 cd   
			lxi h,GAL_RAM_86            ;$cd3b 21 60 d8
Lcd3e:			   
			call Lcd49                  ;$cd3e cd 49 cd   
			inx h                       ;$cd41 23         
			mov a,l                     ;$cd42 7d         
			cpi $a0                     ;$cd43 fe a0      
			jnz Lcd3e                   ;$cd45 c2 3e cd   
			ret                         ;$cd48 c9 
Lcd49:
			mov a,m                     ;$cd49 7e         
			cpi $31                     ;$cd4a fe 31      
			jnz Lcd53                   ;$cd4c c2 53 cd   
			mvi a,$2d                   ;$cd4f 3e 2d      
			mov m,a                     ;$cd51 77         
			ret                         ;$cd52 c9
Lcd53:			         
			cpi $30                     ;$cd53 fe 30      
			rnz                         ;$cd55 c0         
			mvi a,$58                   ;$cd56 3e 58      
			mov m,a                     ;$cd58 77         
			ret                         ;$cd59 c9         

;
;******************************************************************************
;
; ######## ##    ## ########  ########
; ##       ###   ## ##     ## ##
; ##       ####  ## ##     ## ##
; ######   ## ## ## ##     ## ######
; ##       ##  #### ##     ## ##
; ##       ##   ### ##     ## ##
; ######## ##    ## ########  ########
;
;  ######      ###    ##               ########  ########   #######   ######
; ##    ##    ## ##   ##               ##     ## ##     ## ##     ## ##    ##
; ##         ##   ##  ##               ##     ## ##     ## ##     ## ##
; ##   #### ##     ## ##       ####### ########  ########  ##     ## ##   ####
; ##    ##  ######### ##               ##        ##   ##   ##     ## ##    ##
; ##    ##  ##     ## ##               ##        ##    ##  ##     ## ##    ##
;  ######   ##     ## ########         ##        ##     ##  #######   ######
;
;******************************************************************************
;

Dokumente

Weitere Informationen


Download

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert