Top secrets sources NedoPC pentevo

Rev

Rev 643 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?


;LAST UPDATE: 30.08.2017 savelij

LOAD4FLASH      LD HL,ROMS
                LD DE,CMP4ROMS
                JR FATBOOT4

COPYIMAGE       LD HL,IMAGES
                LD DE,CMP4IMAGE
                JR FATBOOT4

;‚›Ž “‘’Ž‰‘’‚€ „‹Ÿ ‡€ƒ“‡Šˆ
FATBOOT         LD HL,HOBETA
                LD DE,CMP4HOBETA
FATBOOT4        DI
                LD (GDE_EXT_FILES),HL
                LD (CMP_FOUNDED),DE
                LD HL,ADRTBLDIRL
                LD (DIR_LEVEL),HL               ;“‘’€Ž‚ˆ‹ˆ „Ž ‘’…Š€ ‘Ž•€…ˆ‰ ŽŠŽ˜…Š
                LD HL,FLAGS
                SET B_RUN_FAT_DSK,(HL)          ;€Ž’€’œ “„…Œ ‘ FAT
                CALL COM_DEV
                DB Devfind                      ;‘Š€ˆŽ‚€ˆ… “‘’Ž‰‘’‚
                JP C,_STUPID                    ;Ž˜ˆŠ€, ˆ Ž„ŽƒŽ €‡„…‹€ … €‰„…Ž
                LD B,E                          ;‘—…’—ˆŠ ŠŽ‹ˆ—…‘’‚€ €‰„…›• €‡„…‹Ž‚
                LD IX,SEL_FAT_DEV               ;€„…‘ Žˆ‘€’…‹Ÿ ŽŠ€ ‚›Ž€ €‡„…‹Ž‚
                LD (IX+0X10),E                  ;ŠŽ‹ˆ—…‘’‚Ž “Š’Ž‚ ‚ ŽŠ…
                INC E
                INC E
                LD (IX+2),E                     ;“‘’€Ž‚ˆ‹ˆ ‚›‘Ž’“ ‚›‚Ž„ˆŒŽƒŽ ŽŠ€
                LD DE,6                         ;˜€ƒ Ž ’€‹ˆ–… €‰„…›• €‡„…‹Ž‚ -2
                EXX
                LD HL,TXT_FAT_SEL
                LD DE,SEL_FAT_DRV               ;€„…‘ ƒ„… “„…’ ”ŽŒˆŽ‚€’œ‘Ÿ ’…Š‘’ ŽŠ€ ‚›Ž€ €‡„…‹Ž‚
                LD BC,ETXT_FAT_SEL-TXT_FAT_SEL
                LDIR
                EX DE,HL
                EXX
FATBOOT1        EXX
                LD (HL),0X0D
                INC HL
                LD (HL),3
                INC HL
                EXX
                LD A,(HL)                       ;‚‡Ÿ‹ˆ ŽŒ… €‡„…‹€
                INC HL
                LD C,(HL)                       ;MASTER ˆ‹ˆ SLAVE
                INC HL
                ADD A,C
                ADD A,C
                SUB 4                           ;-4, ˆŽ „ˆ‘ŠŽ‚Ž„› … “—ˆ’›‚€ž’‘Ÿ
                ADD A,A
                ADD A,A
                ADD A,A
                ADD A,A                         ;“ŒŽ†…Ž € 16
                EXX
                EX DE,HL
                LD HL,TXT4MENU_DEVICE           ;€„…‘ ’€‹ˆ–› ’…Š‘’€ Ž €‡„…‹€•
                LD C,A
                LD B,0
                ADD HL,BC                       ;Ž‹“—ˆ‹ˆ €„…‘ Ž’Š“„€ ’…Š‘’ ‚‡Ÿ’œ
                LD BC,0X10                      ;„‹ˆ€ ……Ž‘€ 16 €‰’
                EXX
                LD A,L
                EXX
                RRCA
                RRCA
                RRCA
                AND 0X1F
                ADD A,"E"                       ;“Š‚€ €‰„…ŽƒŽ “‘’Ž‰‘’‚€
                LD (DE),A
                INC DE
                LDIR                            ;……Ž‘ ’…Š‘’€ ˆ‡ ‚›€Ž‰ ’€‹ˆ–›
                EXX
                LD A,(HL)                       ;’ˆ €‡„…‹€
                EXX
                LD C,A
                ADD A,A
                ADD A,A
                ADD A,C                         ;“ŒŽ†…Ž € 5
                LD HL,TXT4MENU_TYPE             ;€„…‘ ’€‹ˆ–› ’…Š‘’€ ’ˆŽ‚ €‡„…‹Ž‚
                LD C,A
                ADD HL,BC
                LD C,5
                LDIR                            ;……Ž‘ ’…Š‘’€ ˆ‡ ‚›€Ž‰ ’€‹ˆ–›
                EX DE,HL
                EXX
                ADD HL,DE
                DJNZ FATBOOT1
                EXX
                LD (HL),0
                INC HL
                LD B,(IX+2)
                DEC B
                DEC B
                LD C,B
                LD A,"e"
                LD (HL),B
                INC HL
FATBOOT3        LD (HL),A                       ;”ŽŒˆŽ‚€ˆ… ’€‹ˆ–› ƒŽŸ—ˆ• Š‹€‚ˆ˜
                INC HL
                INC A
                DJNZ FATBOOT3
                LD (SELFATDEVEXE),HL            ;Ž‹Ž†ˆ‹ˆ €„…‘ ’€‹ˆ–› €„…‘Ž‚ ‚›‡Ž‚€ ‚›€ŽƒŽ
                LD B,C
FATBOOT2        LD (HL),LOW (SEL_FAT)           ;”ŽŒˆŽ‚€ˆ… ’€‹ˆ–› €„…‘Ž‚ ‚›‡›‚Ž‚
                INC HL
                LD (HL),HIGH (SEL_FAT)
                INC HL
                DJNZ FATBOOT2
                LD A,C
                EXX
                DEC A
                JR Z,SEL_FAT
                CALL WINW                       ;‚›‚…‹ˆ ‘”ŽŒˆŽ‚€Ž… ŽŠŽ
                JP _RULILKA                     ;‚Ž‡‚€™€…Œ‘Ÿ Š Ž™…Œ“ “€‚‹…ˆž

;……Š‹ž—…ˆ… € “‘’Ž‰‘’‚€ ˆ ‚›‚Ž„ €‰„…ŽƒŽ € …Œ
SEL_FAT         DI
                LD A,(IX+0X12)                  ;‚‡Ÿ‹ˆ ŽŒ… ‚›€ŽƒŽ “‘’Ž‰‘’‚€
                CALL COM_DEV
                DB Set_vol                      ;‚›€‹ˆ “‘’Ž‰‘’‚Ž Ž ŽŒ…“
                CALL COM_FAT
                DB Wc_fat                       ;ˆˆ–ˆ€‹ˆ‡€–ˆŸ ”€’ „€‰‚…€ „‹Ÿ ‚›€ŽƒŽ “‘’Ž‰‘’‚€
                CALL SEARCH_FILE
               
                LD HL,1
                AND A
                SBC HL,BC                       ;€‰„…Ž —’Ž-’Ž Ž„Ž?
                JR NZ,SEL_FAT1                  ;…‘‹ˆ €‰„…Ž >1, ’Ž Ž„Ž‹†€…Œ
                PUSH BC                         ;‘Ž•€ˆ‹ˆ ŠŽ‹ˆ—…‘’‚Ž €‰„…ŽƒŽ
                LD BC,(ADR_CAT)                 ;‚‡Ÿ‹ˆ ŽŒ… …„ˆ‘’‚…ŽƒŽ €‰„…ŽƒŽ
                LD A,6
                CALL COM_FAT
                DB Positf
                CALL COM_FAT
                DB Getfzap                      ;Ž‹“—ˆ‹ˆ Žˆ‘€’…‹œ
                POP BC                          ;‚…“‹ˆ ŠŽ‹ˆ—…‘’‚Ž €‰„…ŽƒŽ
                LD DE,0X0B
                ADD HL,DE
                LD A,(HL)                       ;‚‡Ÿ‹ˆ ”‹€ƒŽ‚›‰ €‰’ ’ŽƒŽ —’Ž €˜‹ˆ
                AND 0X10
                LD HL,0                         ;…‘‹ˆ ‡€“‘Š€…Œ, ’Ž ŽŒ… 0 ˆ‡ €‰„…ŽƒŽ
                JR Z,RUN_HOB1                   ;…‘‹ˆ ’Ž ”€‰‹ ‘€‡“ ‡€“‘Š€…Œ
SEL_FAT1        LD IX,FAT_FILES                 ;…‘‹ˆ „ˆ€, ’Ž ‚›‚Ž„ˆŒ ‚ ŽŠŽ
                JP OUT_HOB

;‡€“‘Š ‚›€ŽƒŽ ŠŽ„Ž‚ŽƒŽ ”€‰‹€ ˆ‡ HOBETA ”€‰‹€
RUN_HOB         DI
                CALL SHUT2AY                    ;“ŒŠ€‹Š€ ‚ AY
                LD L,(IX+0X12)
                LD H,(IX+0X13)
RUN_HOB1        LD DE,ADR_CAT
                ADD HL,HL
                ADD HL,DE                       ;Ž’Š“„€ ˆŒŸ ”€‰‹€ ‚‡Ÿ’œ
                LD C,(HL)
                INC HL
                LD B,(HL)                       ;Ž‹“—ˆ‹ˆ ’…Š“™ˆ‰ ‚›€›‰ ŽŒ…
                LD A,6
                CALL COM_FAT
                DB Positf                       ;“‘’€Ž‚Š€ ‚“’……ƒŽ “Š€‡€’…‹Ÿ FAT „€‰‚…€
                CALL COM_FAT
                DB Getfzap                      ;Ž‹“—ˆ‹ˆ Žˆ‘€’…‹œ Ž “‘’€Ž‚‹…ŽŒ“ ŽŒ…“
                LD DE,0X0B                      ;“†… €‰’ Ž ‘Œ…™…ˆž
                ADD HL,DE
                LD A,(HL)                       ;ˆ‡ ’ŽƒŽ €‰’€ “†… Ž„ˆ ˆ’
                SBC HL,DE
                AND 0X10                        ;Ž‚…ˆ‹ˆ
                JR Z,GO_RUN_HOB                 ;…‘‹ˆ ’Ž ”€‰‹, ’Ž ‡€“‘Š€…Œ ŠŽ„Ž‚›‰ ‹ŽŠ
                PUSH BC                         ;‘Ž•€ˆ‹ˆ ŽŒ…
                CALL COM_FAT
                DB Ent_dir                      ;‚Ž‰’ˆ/‚›‰’ˆ ‚/ˆ‡ „ˆ…Š’Žˆ‰
                POP BC                          ;‚Ž‘‘’€Ž‚ˆ‹ˆ ’…Š“™ˆ‰ ŽŒ…
                LD A,D                          ;“„…Œ Ž‚…Ÿ’œ …‚›‰ ‘ˆŒ‚Ž‹ ˆŒ…ˆ …„›„“™…ƒŽ Žˆ‘€’…‹Ÿ
                LD HL,0                         ;€„…‘ ‘’…Š€ ŽŠŽ›• ‘Ž•€…ˆ‰ „‹Ÿ •Ž†„…ˆŸ Ž „ˆ€Œ
DIR_LEVEL       EQU $-2
                CP "."                          ;…‘‹ˆ …‚›‰ ‘ˆŒ‚Ž‹ ˆŒ…ˆ … ".", ’Ž ‘Ž•€Ÿ…Œ ’…Š“™ˆ… ‡€—…ˆŸ ŽŠŽ˜Š€ ˆ  
                JR NZ,SNYT0                     ;‚•Ž„ˆŒ ‚ „ˆ“
                INC HL                          ;ˆ ‚›•Ž„… ˆ‡ „ˆ› ‚Ž‡‚€™€…Œ „€›… …„›„“™…ƒŽ ŽŠ€
                LD A,(HL)
                INC HL
                LD E,(HL)
                INC HL
                LD D,(HL)
                LD (DIR_LEVEL),HL               ;‘Ž•€ˆ‹ˆ ˆ‡Œ…ˆ‚˜ˆ‰‘Ÿ €„…‘ ‘’…Š€ „ˆ…Š’Žˆ‰
                LD (IX+0X12),E
                LD (IX+0X13),D
                LD (IX+0X0F),A
                CALL SEARCH_FILE
                LD (IX+0X10),C
                LD (IX+0X11),B                  ;‚Ž‘‘’€Ž‚ˆ‹ˆ „€›… ŽŠ€ …„›„“™…‰ „ˆ›
                JP REOUT_HOB                    ;‚›‚…‹ˆ Ž‚Ž… ‘Ž„…†ˆŒŽ… ŽŠ€

;ˆ ‚•Ž„… ‚ „ˆ“ ‘Ž•€…ˆ… ’…Š“™ˆ• „€›• ŽŠ€
SNYT0           LD D,(IX+0X13)
                LD E,(IX+0X12)
                LD A,(IX+0X0F)
                LD C,(IX+0X10)
                LD B,(IX+0X11)
                LD (HL),D
                DEC HL
                LD (HL),E
                DEC HL
                LD (HL),A
                DEC HL
                LD (DIR_LEVEL),HL               ;‘Ž•€ˆ‹ˆ ˆ‡Œ…ˆ‚˜ˆ‰‘Ÿ €„…‘ ‘’…Š€
                CALL SEARCH_FILE
                JP OUT_HOB

GO_RUN_HOB      PUSH HL                         ;‘Ž•€ˆ‹ˆ €„…‘ Žˆ‘€’…‹Ÿ
                LD DE,0X14                      ;……•Ž„ˆŒ Š ‘Œ…™…ˆž ‚ Žˆ‘€’…‹… „‹Ÿ Ž‹“—…ˆŸ
                ADD HL,DE                       ;‘’€˜ˆ• 16 ˆ’ ŽŒ…€ Š‹€‘’…€ €—€‹€ ”€‰‹€ „‹Ÿ ‡€“‘Š€
                LD C,(HL)
                INC HL
                LD B,(HL)                       ;‡€€‹ˆ ‘’€˜ˆ… 16 ˆ’ ŽŒ…€ Š‹€‘’…€
                LD E,5                          ;’……œ ˆ„…Œ ‡€ Œ‹€„˜ˆŒˆ 16 ˆ’€Œˆ ŽŒ…€ Š‹€‘’…€
                ADD HL,DE
                LD E,(HL)
                INC HL
                LD D,(HL)                       ;’……œ BCDE=Ž‹›‰ 32-• ˆ’›‰ ŽŒ… Š‹€‘’…€
                LD IXL,0
                CALL COM_FAT                    ;“‘’€Ž‚Š€ ‚“’…ˆ• €€Œ…’Ž‚ FAT „€‰‚…€
                DB Load_file                    ;„‹Ÿ Ž‘‹…„Ž‚€’…‹œŽ‰ ‡€ƒ“‡Šˆ
                POP HL
                LD DE,8
                ADD HL,DE
                LD A,(HL)
                CP "$"
                JP NZ,LOAD_IMAGE                ;……•Ž„ € ‡€ƒ“‡Š“ Ž€‡€
                CALL COM_DEV
                DB Kol_vol                      ;‡€Ž‘ “ Œ……„†…€ “‘’Ž‰‘’‚ Ž ’…Š“™…Œ “‘’Ž‰‘’‚…
                LD A,D                          ;‚‡Ÿ‹ˆ ŽŒ… ’…Š“™…ƒŽ “‘’Ž‰‘’‚€
                ADD A,A
                ADD A,A
                ADD A,A
                LD C,A
                LD B,0
                ADD HL,BC
                LD A,(HL)                       ;‚‡Ÿ‹ˆ ’ˆ €‡„…‹€
                SUB 4                           ;Ž“‘Š€…Œ „ˆ‘ŠŽ‚Ž„›
                EX AF,AF'                       ;ŽŒ… ’…Š“™…ƒŽ “‘’Ž‰‘’‚€ ‚ "A"
                INC HL
                LD A,(HL)                       ;‚‡Ÿ‹ˆ Œ…‘’ŽŽ‹Ž†…ˆ… Ž‘ˆ’…‹Ÿ (MASTER/SLAVE)
                EX AF,AF'

                LD HL,0X5800
                LD DE,0X5801
                LD BC,0X02FF
                LD (HL),L
                LDIR                            ;‡€—…ˆ‹ˆ Š€ „‹Ÿ Œ€‘ŠˆŽ‚Šˆ ‡€“‘Š€‹Šˆ
                LD HL,ERORDRV
                LD DE,0X4200
                LD B,1
                LDIR                            ;……Ž‘ ……Œ…›• ”€’€ „‹Ÿ MICROBOOT
                PUSH DE                         ;‘ž„€ ……Ž‘ ŠŽ„€ ˆ ‡€“‘Š
                LD HL,MICROBOOT
                LD BC,END_MICROBOOT-MICROBOOT
                LDIR                            ;………‘‹ˆ ‡€“‘Š€‹Š“
                PUSH AF
                LD HL,RUN_CODE
                LD DE,0X5D3B
                LD BC,ERUN_CODE-RUN_CODE
                LDIR
                CALL MEMSET                     ;‚›‘’€‚ˆ‹ˆ …†ˆŒ ŠŽŒ€
                CALL FOR_RUN
                POP AF
                RET                             ;‡€“‘Š ‡€“‘Š€‹Šˆ :)

;‡€ƒ“‡Š€ FDI Ž€‡€
LOAD_FDI        LD A,PAGE_RAMDISK               ;‘’€ˆ–€ €—€‹€ €Œ„ˆ‘Š€
                PUSH AF                         ;‘Ž•€ˆ‹ˆ € ‘’…Š…
                CALL SET4MBPAGE                 ;‚Š‹ž—ˆ‹ˆ ……
                LD HL,FDI_TABLE_CYL
                LD DE,FDI_TABLE_CYL+1
                LD BC,0X3FFF
                LD (HL),0
                LDIR                            ;Ž—ˆ‘’Š€ ‘’€ˆ–› ‘ Žˆ‘€’…‹ŸŒˆ „ŽŽ†…Š
                LD IXH,0XFF
                CALL LOAD1SECFDI                ;ˆ“„ˆ’…‹œ€Ÿ ‡€ƒ“‡Š€ …‚ŽƒŽ ‘…Š’Ž€
                LD A,(0XC006)                   ;‚‡Ÿ‹ˆ ŠŽ‹ˆ—…‘’‚Ž ‘’ŽŽ
                DEC A
                LD A,(0XC004)                   ;‚‡Ÿ‹ˆ ŠŽˆ—…‘’‚Ž „ŽŽ†…Š
                JR Z,LOADFDI1
                ADD A,A                         ;…‘‹ˆ ‘’ŽŽ 2, ’Ž “ŒŽ†ˆ‹ˆ ŠŽ‹ˆ—…‘’‚Ž „ŽŽ†…Š € 2
LOADFDI1        LD C,A                          ;ŠŽ‹ˆ—…‘’‚Ž „ŽŽ†…Š
                LD HL,(0XC00A)
;               LD A,H
;               SRL A
;               ADC A,0
;               LD H,A
;               LD DE,(0XC008)
;               AND A
;               SBC HL,DE
                LD (START_DATA),HL
                LD DE,0X4000                    ;€„…‘ “”…€ €—€‹€ Žˆ‘€’…‹…‰ „ŽŽ†…Š
                LD HL,0XC00F                    ;€„…‘ €—€‹€ ‚›ŽŠˆ Žˆ‘€’…‹…‰ „ŽŽ†…Š ‚ FDI ‡€ƒŽ‹Ž‚Š…
LOADFDI3        BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                LD A,(HL)                       ;ˆ’› 8-15 ‘Œ…™…ˆŸ „ŽŽ†Šˆ Ž’ €—€‹€
                AND 0X3F                        ;‚‡Ÿ‹ˆ „‹Ÿ 8-13 ˆ’›-‘Œ…™…ˆ… ‚ ‹ŽŠ€• ‚ ‘’€ˆ–…
                LD (DE),A                       ;“‹Ž†ˆ‹ˆ ‘Œ…™…ˆ… ‚ ‹ŽŠ€• ‚ ‘’€ˆ–…
                LD A,(HL)                       ;‚‡Ÿ‹ˆ ˆ’› 14-15
                INC HL                          ;‘‹…„“ž™ˆ‰ €‰’ FDI ‡€ƒŽ‹Ž‚Š€
                INC D                           ;‡„…‘œ Ž‹Ž†ˆŒ ‘Œ…™…ˆ… ‚ ‘’€ˆ–€• „Ž “†Ž‰ „ŽŽ†Šˆ
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                LD B,A                          ;‘Ž•€ˆ‹ˆ “†›… 14-15 ˆ’›
                LD A,(HL)                       ;‚‡Ÿ‹ˆ 16-23 ˆ’› ‘Œ…™…ˆŸ „ŽŽ†Šˆ Ž’ €—€‹€
                RL B
                RLA
                RL B
                RLA
                LD (DE),A                       ;“Š‹€„Š€ ˆ’Ž‚ ‘Œ…™…ˆŸ ŽŒ…€ ‘’€ˆ–›
                INC D
                REPT 4
                INC HL
                ENDM
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                LD B,(HL)                       ;‚‡Ÿ‹ˆ ŠŽ‹ˆ—…‘’‚Ž ‘…Š’ŽŽ‚ € „ŽŽ†Š…
                LD A,B
                AND A
                JP Z,LOADFDI_ERR
                INC HL
                INC HL
LOADFDI4        INC HL
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                LDI                             ;……Ž‘ ŽŒ…€ ‘…Š’Ž€
                DEC DE
                INC C
                INC D
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                LD A,(HL)                       ;‚‡Ÿ‹ˆ €‡Œ… ‘…Š’Ž€
                EX DE,HL
                LD (HL),1
                AND A
                JR Z,LOADFDI2
                LD (HL),2
                DEC A
                JR Z,LOADFDI2
                LD (HL),4
                DEC A
                JR Z,LOADFDI2
                LD (HL),8
LOADFDI2        EX DE,HL
                INC D
                REPT 5
                INC HL
                ENDM
                DJNZ LOADFDI4                   ;‚Ž‡‚€™€…Œ‘Ÿ „‹Ÿ Ž„Ž‹†…ˆŸ, ŽŠ€ ‘…Š’Ž€ „ŽŽ†Šˆ … ŠŽ—€’‘Ÿ
                LD D,0X40
                INC E
                DEC C
                JR NZ,LOADFDI3                  ;‚Ž‡‚€™€…Œ‘Ÿ „‹Ÿ Ž„Ž‹†…ˆŸ ŽŠ€ … ŠŽ—€’‘Ÿ „ŽŽ†Šˆ
                DEC HL
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                PUSH HL
                LD A,H
                AND 1
                LD B,A
                LD C,L
                LD A,IXH
                ADD A,A
                ADD A,B
                LD B,A
                LD HL,0
START_DATA      EQU $-2
                AND A
                SBC HL,BC
                EX DE,HL
                POP HL
                LD A,D
                AND A
                JR Z,LOADFDI7
LOADFDI8        INC H
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                DEC D
                JR NZ,LOADFDI8
LOADFDI7        ADD HL,DE
                BIT 1,H
                CALL NZ,LOAD1SECFDI             ;…‘‹ˆ ‚›˜‹ˆ ‡€ …„…‹› ‘…Š’Ž€ Œ…Ÿ…Œ “Š€‡€’…‹œ ˆ ƒ“‡ˆŒ ‘‹…„“ž™ˆ‰ ‘…Š’Ž ‚ “”…
                PUSH HL                         ;‘Ž•€ˆ‹ˆ €„…‘ € €—€‹Ž €—€‹€ ‘…Š’ŽŽ‚
                LD DE,0XC000
                AND A
                SBC HL,DE
                LD (OSTAT_SECT),HL              ;‘ŠŽ‹œŠŽ €‰’ ………‘’ˆ ˆ‡ •‚Ž‘’€ ‘…Š’Ž€ ‚ “”…… ‚ €—€‹Ž ‘’€ˆ–›
                LD B,H
                LD C,L
                LD HL,0X200
                SBC HL,BC
                LD (NACH_SECT),HL               ;‘ŠŽ‹œŠŽ €‰’ ………‘’ˆ ˆ‡ €—€‹€ ‘…Š’Ž€ ‚ “”…… ‚ ŠŽ…– ‘’€ˆ–›
                POP HL                          ;‚Ž‘‘’€Ž‚ˆ‹ˆ ‘„…‘ €—€‹€ ‘…Š’ŽŽ‚, „€‹…… ‡€ƒ“‡Š€ ‚‘…• ‘…Š’ŽŽ‚ ‚ €ŒŸ’œ
LOADFDI5        POP AF
                INC A
                CALL SET4MBPAGE
                PUSH AF
                BIT 1,H
                CALL NZ,LOAD1SECFDI
                EX AF,AF'
                LD DE,0X4000
                LD BC,0
NACH_SECT       EQU $-2
                LDIR
                EX AF,AF'

                JP C,ELOAD_IMAGE
                EX DE,HL
                LD IXL,0X1F
                CALL COM_FAT
                DB Load_file
                JP C,ELOAD_IMAGE
                PUSH HL
                LD HL,0XC000
                PUSH HL
                LD IXL,1
                CALL COM_FAT
                DB Load_file
                POP HL
                POP DE
                LD BC,0
OSTAT_SECT      EQU $-2
                LDIR
                JR LOADFDI5

LOADFDI_ERR     LD A,PAGE_RAMDISK
                CALL SET4MBPAGE
                LD HL,0X7FFF
                LD (HL),0
                DEC H
                LD (HL),0
                LD A,0XFA
                CALL SET4MBPAGE
                LD SP,(LD_FILE_SP)
                POP IY
                POP IX
                JP LDFDI_ERROR

CREATE_RAMTABL  PUSH IX
                PUSH IY
                LD (LD_FILE_SP),SP
                LD SP,ADR_CAT
;‘Ž‡„€ˆ… ’€‹ˆ–› Žˆ‘€’…‹Ÿ „‹Ÿ ‡€ƒ“†…›• TRD ˆ SCL Ž€‡Ž‚
END_LOAD_TRD    LD A,PAGE_RAMDISK+1             ;“†€ ‘’€ˆ–€ Ž’Š“„€ €—ˆ€…’‘Ÿ ‡€ƒ“†…›‰ Ž€‡
                CALL SET4MBPAGE
                LD HL,(0X48E1)                  ;…‚›‰ ‘‚ŽŽ„›‰ ’…Š ‘…Š’Ž
                LD A,L
                LD L,H
                LD H,0
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                OR L
                LD L,A                          ;ŠŽ‹ˆ—…‘’‚Ž ‡€Ÿ’›• ‘…Š’ŽŽ‚ ‘ „ˆ…Š’Žˆ…‰
                LD DE,(0X48E5)                  ;ŠŽ‹ˆ—…‘’‚Ž ‘‚ŽŽ„›• ‘…Š’ŽŽ‚
                ADD HL,DE
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL                       ;H=ŠŽ‹ˆ—…‘’‚Ž „ŽŽ†…Š
                LD A,H
                CP 0XA0
                JR NC,ELT3
                LD A,0XA0
ELT3            EX AF,AF'
                LD A,PAGE_RAMDISK               ;“†€ ‘’€ˆ–€ €—€‹€ €Œ„ˆ‘Š€, ƒ„… “„…’ ’€‹ˆ–€ Žˆ‘€’…‹…‰
                CALL SET4MBPAGE
                LD HL,0X4000
                PUSH HL
                LD DE,0X4001
                LD BC,0X3FFF
                LD (HL),L
                LDIR                            ;Ž—ˆ‘’ˆ‹ˆ ‘’€ˆ–“
                POP DE                          ;€„…‘ €—€‹€
                LD HL,0                         ;‘Œ…™…ˆ… ‚ ‹ŽŠ€• ˆ ‘’€ˆ–€•
                EX AF,AF'

ELT2            EX AF,AF'
                LD BC,0X1000                    ;‘—…’—ˆŠ ŽŒ…Ž‚ ‘…Š’ŽŽ‚ ˆ ˆ• ŽŒ…€
                LD A,L
                RRCA
                RRCA
                LD (DE),A                       ;‘Œ…™…ˆ… ‚ ‹ŽŠ€• „ŽŽ†Šˆ ‚ ‘’€ˆ–…
                INC D
                LD A,H
                LD (DE),A                       ;‘Œ…™…ˆ… ‚ ‘’€ˆ–€• „Ž „ŽŽ†Šˆ
                INC D
ELT1            INC C
                LD A,C
                LD (DE),A                       ;ŽŒ… ‘…Š’Ž€
                INC D
                LD A,2
                LD (DE),A                       ;€‡Œ… ‘…Š’Ž€
                INC D
                DJNZ ELT1                       ;‚Ž‘ˆŒ ‚ ’€‹ˆ–“ ‚‘… ŽŒ…€ ‘…Š’ŽŽ‚ ‘ €‡Œ…€Œˆ
                LD D,0X40                       ;‚…“‹ˆ “Š€‡€’…‹œ ‚ €—€‹Ž
                INC E                           ;„‹Ÿ ‘‹…„“ž™…‰ „ŽŽ†Šˆ
                LD BC,0X40
                ADD HL,BC                       ;……•Ž„ Š ‘‹…„“ž™…‰ „ŽŽ†Š…
                EX AF,AF'

                DEC A
                JR NZ,ELT2                      ;Ž‚’ŽŸ…Œ „‹Ÿ ‚‘…• „ŽŽ†…Š
;Ž™ˆ‰ ‚›•Ž„ ˆ‡ ‡€ƒ“‡Šˆ ‘ ‚Ž‡‚€’ŽŒ ‘’€„€’Ž‰ ‘’€ˆ–› ‚ ŽŠ… Ž…–ˆŽ‚€ˆŸ 1
ELOAD_IMAGE     LD A,PAGE_RAMDISK
                CALL SET4MBPAGE
                LD HL,0X7FFF
                LD (HL),"R"
                DEC H
                LD (HL),"D"
                LD A,0XFA
                CALL SET4MBPAGE
                LD SP,0
LD_FILE_SP      EQU $-2
                POP IY
                POP IX
                RET

;‡€ƒ“‡Š€ ‘‹…„“ž™…ƒŽ ‘…Š’Ž€ ‡€ƒŽ‹Ž‚Š€ FDI
LOAD1SECFDI     PUSH HL
                PUSH BC
                PUSH DE
                PUSH AF
                LD HL,0XC000
                LD IXL,1
                CALL COM_FAT
                DB Load_file
                INC IXH
                POP AF
                POP DE
                POP BC
                POP HL
                RES 1,H
                RET

;‚Š‹ž—…ˆ… ‚ 1 ŽŠŽ Ž…–ˆŽ‚€ˆŸ ‡€„€Ž‰ ‘’€ˆ–›
SET4MBPAGE      PUSH BC
                LD B,A
                PEC_ON SHADOW_BF
;               LD A,1
;               OUT (PEVO_CONF),A
                LD A,B
                LD BC,WIN_P5
                OUT (C),A
                LD B,A
                PEC_OFF SHADOW_BF
;               XOR A
;               OUT (PEVO_CONF),A
                LD A,B
                POP BC
                RET

LOAD_IMAGE      DI
                CP "R"
                LD HL,FLASHER
                JR Z,LOAD_IMAGE8
                LD HL,RESTART
LOAD_IMAGE8     PUSH HL
                PUSH IX
                PUSH IY
                LD (LD_FILE_SP),SP
                LD SP,ADR_CAT
                CP "S"                          ;’Ž SCL ”€‰‹?
                JR Z,LOAD_IMAGE2
                CP "F"                          ;’Ž FDI ”€‰‹?
                JP Z,LOAD_FDI
                CP "T"                          ;’Ž TRD ”€‰‹?
                JR NZ,LOAD_ROM
                LD A,PAGE_RAMDISK+1
;‡€ƒ“‡Š€ TRD Ž€‡€
LOAD_IMAGE1     PUSH AF
                CALL SET4MBPAGE
                LD HL,0X4000
                LD IXL,0X20
                CALL COM_FAT
                DB Load_file
                JP C,END_LOAD_TRD;ELOAD_IMAGE
                POP AF
                INC A
                JR LOAD_IMAGE1

LOAD_ROM        CP "R"                          ;’Ž ROM ”€‰‹?
                JP NZ,ELOAD_IMAGE
                LD A,PAGE4FLASHER
                JR LOAD_IMAGE1

;‡€ƒ“‡Š€ SCL Ž€‡€
LOAD_IMAGE2     LD HL,DSKINFO
                LD DE,ADR_CAT+0XF00
                LD BC,DSK_END-DSKINFO
                LDIR                            ;‘Ž•€…ˆ… ˆ”› „‹Ÿ ‘Ž‡„€ˆŸ ‡€ƒŽ‹Ž‚Š€ „ˆ‘Š…’›
                LD A,PAGE_RAMDISK+1
LOAD_IMAGE4     PUSH AF
                CALL SET4MBPAGE                 ;‚Š‹ž—ˆ‹ˆ …‚“ž ‘’€ˆ–“ Ž’Š“„€ €Œ„ˆ‘Š €—ˆ€…’‘Ÿ
                LD HL,0X5000
                LD IXL,0X18
                CALL COM_FAT                    ;‡€ƒ“‡ˆ‹ˆ …‚›… 0X18 ‘…Š’ŽŽ‚ SCL Ž€‡€
                DB Load_file           
                PUSH AF                         ;‘Ž•€ˆ‹ˆ ”‹€ƒ ŽŠŽ—€ˆŸ ‡€ƒ“‡Šˆ € ‘‹“—€‰ ŽŠŽ—€ˆŸ Ž€‡€
                LD HL,0X4000
                PUSH HL                         ;‘Ž•€ˆ‹ˆ €„…‘ €—€‹€ Š€’€‹Žƒ€
                LD (HL),L
                LD D,H
                LD E,L
                INC DE
                LD BC,0XFFF
                LDIR                            ;‡€—ˆ‘’Š€ Ž‹€‘’ˆ …‚Ž‰ „ŽŽ†Šˆ „‹Ÿ ”ŽŒˆŽ‚€ˆŸ Š€’€‹Žƒ€ „ˆ‘Š€
                LD HL,0X5008                    ;€„…‘ ŠŽ‹ˆ—…‘’‚€ ”€‰‹Ž‚ ‚ SCL Ž€‡…
                LD A,(HL)                       ;‚‡Ÿ‹ˆ ŠŽ‹ˆ—…‘’‚Ž ”€‰‹Ž‚ Š€Š ‘—…’—ˆŠ
                INC HL                          ;……˜‹ˆ € …‚›‰ Žˆ‘€’…‹œ ”€‰‹€
                EXX
                LD HL,0                         ;ŽŒ… €‘Ž‹ž’ŽƒŽ ‘…Š’Ž€
                LD D,L                          ;ˆ€™…ˆ… ‘…Š’ŽŽ‚ … ŒŽ†…’ ›’œ Ž‹…… 255 ‘…Š’ŽŽ‚
                LD B,A                          ;‘Ž•€…ˆ… ŠŽ‹ˆ—…‘’‚€ ”€‰‹Ž‚
                EXX
                POP DE                          ;‚…“‹ˆ €„…‘ €—€‹€ Š€’€‹Žƒ€ „ˆ‘Š€
LOAD_IMAGE3     EX AF,AF'
                LD BC,0X0D
                LDIR                            ;………‘‹ˆ 13 €‰’ ’…‹€ Žˆ‘€’…‹Ÿ
                LD A,(HL)                       ;‡€€‹ˆ €‡Œ… ”€‰‹€ ‚ ‘…Š’Ž€•
                LDI                             ;………‘‹ˆ …™… €‰’
                EXX
                LD E,A
                PUSH HL                         ;‘Ž•€ˆ‹ˆ ’…Š™…… ‡€—…ˆ… ŽŒ…€ ‘…Š’Ž€
                ADD HL,DE                       ;“‚…‹ˆ—ˆ‹ˆ ’…Š™…… ‡€—…ˆ… € €‡Œ… ”€‰‹€ ‚ ‘…Š’Ž€•
                EXX
                EX (SP),HL
                LD A,L
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                INC H
                AND 0X0F
                LD L,A
                EX (SP),HL
                POP BC                          ;‚Ž‘‘’€Ž‚ˆ‹ˆ ’…Š™ˆ‰ ŽŒ… ‘…Š’Ž€
                EX DE,HL
                LD (HL),C
                INC HL
                LD (HL),B                       ;“‹Ž†ˆ‹ˆ Ž‘‹… ’…Š“™…ƒŽ Žˆ‘€’…‹Ÿ
                INC HL
                EX DE,HL
                EX AF,AF'

                DEC A
                JR NZ,LOAD_IMAGE3               ;…‘‹ˆ ”€‰‹› … ŠŽ—ˆ‹ˆ‘œ Ž„Ž‹†€…Œ
                PUSH HL                         ;‘Ž•€ˆ‹ˆ €„…‘ €—€‹€ „€›•
                LD HL,ADR_CAT+0XF00
                LD DE,0X48E1
                LD BC,DSK_END-DSKINFO
                LDIR
                EXX
                LD DE,2544                      ;‘’€„€’›‰ €‡Œ… „ˆ‘Š…’›
                EX DE,HL
                AND A
                SBC HL,DE
                LD (0X48E5),HL                  ;ŠŽ‹ˆ—…‘’‚Ž ‘‚ŽŽ„›• ‘…Š’ŽŽ‚
                EX DE,HL
                LD A,L
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                ADD HL,HL
                INC H
                AND 0X0F
                LD L,A
                LD (0X48E1),HL                  ;…‚›‰ ‘‚ŽŽ„›‰ ’…Š ˆ ‘…Š’Ž
                LD A,B
                LD (0X48E4),A                   ;ŠŽ‹ˆ—…‘’‚Ž ”€‰‹Ž‚ € „ˆ‘Š…
                EXX
                POP DE                          ;‚Ž‘‘’€Ž‚‹…ˆ… €„…‘€ €—€‹€ „€›•
                LD HL,0X8000                    ;ŠŽ…– ŽŠ€ Ž…–ˆŽ‚€ˆŸ
                AND A
                SBC HL,DE                       ;Ž‹“—ˆ‹ˆ ŠŽ‹ˆ—…‘’‚Ž €‰’ „‹Ÿ ‘„‚ˆƒ€
                LD B,H
                LD C,L
                LD HL,0X5000                    ;€—€‹Ž „€›• € €Œ„ˆ‘Š…
                EX DE,HL
                LDIR                            ;‘„‚ˆ“‹ˆ, Ž‘‹… ……Ž‘€ DE=€„…‘ Š“„€ „€‹…… ƒ“‡ˆ’œ
                LD A,D
                CP 0X7E
                JR NC,LOAD_IMAGE7
                EX DE,HL
                SRL A
                LD IXL,A
                CALL COM_FAT
                DB Load_file
                LD DE,0X8000
                EX DE,HL
LOAD_IMAGE7     AND A
                SBC HL,DE                       ;Ž‹“—ˆ‹ˆ ‘ŠŽ‹œŠŽ €‰’ Ž‘’€‹Ž‘œ „Ž ŠŽ–€ ŽŠ€
                LD (OST_HWOST),HL
                LD (KUDA_HWOST),DE
                LD DE,0
                EX DE,HL
                SBC HL,DE
                LD A,1
                AND H
                LD H,A
                LD (NEXT4PAGE),HL
                POP AF                          ;‚Ž‘‘’€Ž‚ˆ‹ˆ ”‹€ƒ Ž‘‹…„…‰ ‡€ƒ“‡Šˆ
                JP C,END_LOAD_TRD;ELOAD_IMAGE           ;…‘‹ˆ ”€‰‹ “†… ŠŽ—ˆ‹‘Ÿ, ’Ž ‚›•Ž„
                JR LOAD_IMAGE5

LOAD_IMAGE6     LD DE,0X4000
                LD BC,0
NEXT4PAGE       EQU $-2
                LDIR
                EX AF,AF'
                JP C,END_LOAD_TRD;ELOAD_IMAGE
                EX DE,HL
                LD IXL,0X1F
                CALL COM_FAT
                DB Load_file
                JP C,END_LOAD_TRD;ELOAD_IMAGE
LOAD_IMAGE5     LD HL,ADR_CAT
                PUSH HL
                LD IXL,1
                CALL COM_FAT
                DB Load_file
                EX AF,AF'
                      ;‘Ÿ’€‹ˆ ”‹€ƒ ‡€ƒ“‡Šˆ ‘…Š’Ž€
                POP HL                          ;‚Ž‘‘’€Ž‚ˆ‹ˆ €„…‘ Š“„€ ‘…Š’Ž ‚ “”… ‡€ƒ“‡ˆ‹ˆ
                LD DE,0
KUDA_HWOST      EQU $-2                         ;Š“„€ ‹Ž†ˆ’ Ž‘’€’ŽŠ ‚ ŽŠ…
                LD BC,0
OST_HWOST       EQU $-2                         ;‘ŠŽ‹œŠŽ ……Ž‘ˆ’œ ‚ ŠŽ…– ‘’€ˆ–›
                LDIR
                POP AF
                INC A
                PUSH AF
                CALL SET4MBPAGE
                JR LOAD_IMAGE6

;Ž‚…Š€ ‡€ƒŽ‹Ž‚Š€ HOBETA ”€‰‹€
;€ ‚›•Ž„…: ”‹€ƒ ‘=1-… ‘ŽŽ’‚…‘’‚“…’
CMP4HOBETA      SUB 1
                RET NZ
                LD A,(BUF_512+8)
                CP "C"                          ;Ž‚…Š€ —’Ž ’Ž ŠŽ„Ž‚›‰ ‹ŽŠ, € … —’Ž-’Ž „“ƒŽ…
                SCF
                RET NZ
                PUSH DE                         ;‘Ž•€ˆ‹ˆ €„…‘ ‘Š‹€„ˆŽ‚€ˆŸ „‹Ÿ „€‹œ…‰˜…‰ Ž‚…Šˆ
                LD B,H
                LD C,L                          ;‚Ž‡‚€™€…Œ‘Ÿ ‚ €—€‹Ž ‘…Š’Ž€
                CALL HOB_CRC                    ;‘—ˆ’€…Œ CRC HOBETA ‡€ƒŽ‹Ž‚Š€
                LD A,(BC)
                INC BC
                LD E,A
                LD A,(BC)
                LD D,A                          ;‚ "DE" €‘‘—ˆ’€Ž… CRC •Ž…’€ ‡€ƒŽ‹Ž‚Š€
                AND A                           ;‚ "HL" ‚‡Ÿ’Ž… ˆ‡ ‘Œ…™…ˆŸ +0X0F Ž’ €—€‹€ ”€‰‹€
                SBC HL,DE                       ;‘€‚ˆ‚€…Œ
                POP DE                          ;…‘‹ˆ … ‘Ž‚€‹Ž ’Ž ‚Ž‡ŒŽ†Ž ’Ž … •Ž…’€
                SCF
                RET NZ                          ;Ž“‘Š€…Œ ”€‰‹
                EXX
                LD HL,(BUF_512+9)               ;‚‡Ÿ‹ˆ €„…‘ ‡€ƒ“‡Šˆ
                DEC HL                          ;„‹Ÿ ‡€ƒ“‡Šˆ Œ€‘ˆŒ“Œ 40960 €‰’ (160 ‘…Š’ŽŽ‚)
                LD DE,(BUF_512+0X0B)            ;‚‡Ÿ‹ˆ „‹ˆ“ ŠŽ„Ž‚ŽƒŽ ‹ŽŠ€
                ADD HL,DE                       ;Ž‚…Ÿ…Œ ‚›•Ž„ ‡€ …„…‹› Ž‡“
                EXX                             ;…‘‹ˆ ‚›‹…’ ‡€ …„…‹ Ž‡“
                RET C                           ;Ž“‘Š€…Œ ”€‰‹
                EXX
                LD HL,(BUF_512+9)
                LD DE,0X6000                    ;Ž‚…Ÿ…Œ €„…‘ ‡€ƒ“‡Šˆ
                AND A                           ;€„…‘ ‡€ƒ“‡Šˆ … „Ž‹†… ›’œ ˆ†… 0X6000
                SBC HL,DE
                EXX                             ;…‘‹ˆ €„…‘ ‡€ƒ“‡Šˆ ˆ†… 0X6000
                RET

;€ ‚•Ž„…: BC-€„…‘ ‡€ƒŽ‹Ž‚Š€
;€ ‚›•Ž„…: HL-HOBETA CRC
HOB_CRC         LD A,0X0F
                LD HL,0
                EXX
                LD E,0
                EXX
HOBCRC1         EX AF,AF'
                LD A,(BC)
                LD E,A
                LD D,A
                ADD HL,DE
                EXX
                LD A,E
                INC E
                EXX
                LD E,A
                LD D,0
                ADD HL,DE
                EX AF,AF'

                INC BC
                DEC A
                JR NZ,HOBCRC1
                RET

CMP4ROMS        EXX
                LD A,B
                OR D
                OR E
                JR NZ,CMP4IMAGE2
                LD A,C
                CP 8
                JR NZ,CMP4IMAGE2
                EXX
CMP4ROMS1       AND A
                RET

CMP4IMAGE2      EXX
                SCF
                RET

CMP4FDI         PUSH HL
                EXX
                POP HL
                LD A,(HL)
                CP "F"
                JR NZ,CMP4IMAGE2
                INC HL
                LD A,(HL)
                CP "D"
                JR NZ,CMP4IMAGE2
                INC HL
                LD A,(HL)
                CP "I"
                JR NZ,CMP4IMAGE2
                INC HL
                INC HL
                LD A,(HL)                       ;ŠŽ‹ˆ—…‘’‚Ž –ˆ‹ˆ„Ž‚
                CP 0X57
                JR NC,CMP4IMAGE2
                INC HL
                LD A,(HL)                       ;„Ž‹†… ›’œ 0
                AND A
                JR NZ,CMP4IMAGE2
                INC HL
                LD A,(HL)                       ;ŠŽ‹ˆ—…‘’‚Ž ‘’ŽŽ
                AND A
                JR Z,CMP4IMAGE2
                CP 3
                JR NC,CMP4IMAGE2
                INC HL
                LD A,(HL)                       ;„Ž‹†Ž ›’œ 0
                AND A
                JR NZ,CMP4IMAGE2
                EXX
                AND A
                RET

CMP4IMAGE       CP 3
                JR Z,CMP4FDI
                SUB 1
                RET Z                           ;„‹Ÿ TRD Ž‚…Š€ … “†Š€
;„‹Ÿ SCL Ž‚…Š€ €‹ˆ—ˆŸ ‘‹Ž‚€ "SINCLAIR" ‚ …‚›• 8 €‰’€•
                PUSH HL
                EXX
                POP HL
                LD DE,SIGN_SCL
                LD B,8
CMP4IMAGE1      LD A,(DE)
                CP (HL)
                JR NZ,CMP4IMAGE2
                INC DE
                INC HL
                DJNZ CMP4IMAGE1
                EXX
                AND A
                RET

SEARCH_FILE     LD DE,ADR_CAT                   ;€„…‘ Š“„€ ‘Š‹€„ˆŽ‚€’œ ŽŒ…€ €‰„…ŽƒŽ
                LD HL,0                         ;ƒ„… ‘ˆ‘ŽŠ €‘˜ˆ…ˆ‰ „‹Ÿ Žˆ‘Š€
GDE_EXT_FILES   EQU $-2
                CALL COM_FAT
                DB Find_file                    ;Žˆ‘Š ”€‰‹Ž‚ Ž ‡€„€ŽŒ“ €‘˜ˆ…ˆž
                RET Z
                JR SEARCHF2

SEARCHF1        CALL COM_FAT
                DB Next_find
                RET Z
SEARCHF2        CALL 0
CMP_FOUNDED     EQU $-2
                RLA
                AND 1
                JR SEARCHF1

;Ž˜ˆ‚€’…‹œ ‡“ ˆ ˆ„ˆŠ€–ˆ…‰ Ž–…‘‘€
FLASHER         LD IX,ERASE_ROM
                CALL WINW
                LD (FLASH_SP),SP
                LD SP,ADR_CAT
                PEC_ON SHADOW_BF+FLASH_BF
;               LD A,3
;               OUT (PEVO_CONF),A
                LD A,3
                CALL SETWIN_INDICAT
                LD E,0
                LD HL,0
FLASHER4        CALL ERASE_BLK
                LD A,0XFA
                EX AF,AF'
                CALL INC_INDICAT
                INC E
                BIT 3,E
                JR Z,FLASHER4
                LD A,0XFF
                LD BC,WIN_P3;0XF7F7
                OUT (C),A
                LD IX,UPDATE_WIN
                CALL WINW
                LD A,PAGE4FLASHER
                LD E,0
FLASHER3        LD HL,0
                PUSH AF
                LD A,0XFA
                LD BC,WIN_P5;0X77F7
                OUT (C),A
                LD A,E
                ADD A,2
                CALL SETWIN_INDICAT
                POP AF
FLASHER2        PUSH AF
                LD BC,WIN_P5;0X77F7
                OUT (C),A
                EX AF,AF'

                PUSH IX
                LD IX,0X4000
FLASHER1        LD A,(IX)
                CALL PGM_BYTE
                INC IX
                INC HL
                LD A,H
                AND 0X0F
                OR L
                CALL Z,INC_INDICAT
                LD A,IXH
                AND 0X80
                JR Z,FLASHER1
                POP IX
                POP AF
                INC A
                LD D,A
                LD A,H
                AND A
                LD A,D
                JR NZ,FLASHER2
                INC E
                BIT 3,E
                JR Z,FLASHER3
EFLASHER        LD A,0XFA
                LD BC,WIN_P5;0X77F7
                OUT (C),A
                LD BC,WIN_A3;0XFFF7
                LD A,0XFF
                OUT (C),A
                PEC_OFF SHADOW_BF+FLASH_BF
;               XOR A
;               OUT (PEVO_CONF),A
                LD SP,0
FLASH_SP        EQU $-2
                JP RESTART