.NOLIST
#define     equ             .equ
#define     EQU             .equ
#define     END             .end
.LIST
#define bcall(xxxx)     rst 28h    \ .dw xxxx
#define bcallz(xxxx)    jr nz,$+5  \ rst 28h  \ .dw xxxx
#define bcallnz(xxxx)   jr  z,$+5  \ rst 28h  \ .dw xxxx
#define bcallc(xxxx)    jr  nc,$+5 \ rst 28h  \ .dw xxxx
#define bcallnc(xxxx)   jr  c,$+5  \ rst 28h  \ .dw xxxx
#define bjump(xxxx)     call 50h   \ .dw xxxx
_GrBufClr              equ     4BD0h
find_num_good_progs    equ     4161h
Get_Curgoodprog_Ptr    equ     41C7h
getnextgoodprog        equ     410Dh
put_mirageos_header    equ     4170h
invert_1_line          equ     416Ah
put_scrollbar          equ     4164h
Initial_Scrollbar      equ     419Dh
fastlineb              equ     40D4h
put_folder_name_top    equ     415Bh
saveSScreen            equ     86ECh
Update_Scrollbar       equ     419Ah
ifastcopy              equ     4092h
_GetCSC                equ     4018h
general_key_routine    equ     415Eh
options_screen         equ     4158h
folder_menu_start      equ     4155h
move_gui_prog          equ     4194h
cphlde                 equ     4101h
getprevgoodprog        equ     4110h
pTemp                  equ     982Eh
Decrease_Cur_Element   equ     41AFh
getinfo                equ     411Fh
OP2                    equ     8483h
setvputs               equ     40A7h
Increase_Cur_Element   equ     41ACh
customHeight           equ     9B72h
filledrectangle        equ     413Dh
ionDetect              equ     96D6h
runprog                equ     4131h

.org        9870h

 9870   BB6D        .db 0BBh, 6Dh
 9872   C9        ret           ; ION MODULE
 9873   02        .db   2       ; ION MODULE
 9874   03        inc  bc      
 9875   1B        dec  de      
 9876   50        ld   d, b    
 9877   72        ld   (hl), d 
 9878   6F        ld   l, a    
 9879   67        ld   h, a    
 987A   72        ld   (hl), d 
 987B   61        ld   h, c    
 987C   6D        ld   l, l    
 987D   2020      jr   nz, Label1
 987F   4E        ld   c, (hl) 
 9880   61        ld   h, c    
 9881   6D        ld   l, l    
 9882   65        ld   h, l    
 9883   73        ld   (hl), e 
 9884   00        nop          
 9885   110B03    ld   de, 0030Bh
 9888   ED539E96  ld   (0969Eh), de 
 988C   3E01      ld   a, 01h
 988E   32A296    ld   (096A2h), a  
 9891   32A196    ld   (096A1h), a  
 9894   210100    ld   hl, 0001h
 9897   22DB96    ld   (096DBh), hl 
 989A   AF        xor  a       
 989B   32F486    ld   (086F4h), a  
 989E   EFD04B    bcall(_GrBufClr)     
 98A1   CD6141    call find_num_good_progs
 98A4   B7        or   a       
 98A5   2836      jr   z, Label2
 98A7   CDC741    call Get_Curgoodprog_Ptr
 98AA   3AA196    ld   a, (096A1h)  
 98AD   47        ld   b, a    
 98AE   CDC441    call 041C4h
 98B1   229A96    ld   (0969Ah), hl 
 98B4   3A9199    ld   a, (Str1)  
 98B7   CB3F      srl  a       
 98B9   3001      jr   nc, Label3
 98BB   3C        inc  a       

Label3:
 98BC   FE07      cp   07h
 98BE   3804      jr   c, Label4
 98C0   D605      sub  05h
 98C2   1802      jr   Label5

Label4:
 98C4   3E01      ld   a, 01h

Label5:
 98C6   2600      ld   h, 00h
 98C8   6F        ld   l, a    
 98C9   22DF96    ld   (096DFh), hl 
 98CC   210000    ld   hl, 0000h
 98CF   CD0D41    call getnextgoodprog
 98D2   22F086    ld   (086F0h), hl 

Label6:
 98D5   CD0D41    call getnextgoodprog
 98D8   28FB      jr   z, Label6
 98DA   22F286    ld   (086F2h), hl 

Label2:
 98DD   CD7041    call put_mirageos_header
 98E0   21D495    ld   hl, 095D4h
 98E3   CD6A41    call invert_1_line
 98E6   213496    ld   hl, 09634h
 98E9   CD6A41    call invert_1_line
 98EC   210958    ld   hl, 05809h
 98EF   0620      ld   b, 20h
 98F1   CD6441    call put_scrollbar
 98F4   CD9D41    call Initial_Scrollbar
 98F7   210900    ld   hl, 0009h
 98FA   113E00    ld   de, 003Eh
 98FD   CDD440    call fastlineb
 9900   21385F    ld   hl, 05F38h
 9903   113E5F    ld   de, 05F3Eh
 9906   CDD440    call fastlineb
 9909   CD5B41    call put_folder_name_top
 990C   3A9199    ld   a, (Str1)  
 990F   B7        or   a       
 9910   CA1BA2    jp   z, 0A21Bh
 9913   11080B    ld   de, 00B08h
 9916   ED53EC86  ld   (saveSScreen), de 
 991A   CD5BA1    call 0A15Bh
 991D   CD42A1    call 0A142h
 9920   CD9A41    call Update_Scrollbar
 9923   1803      jr   Label7
 9925   CD42A1    call 0A142h

Label7:
 9928   CDA5A1    call 0A1A5h
 992B   21F486    ld   hl, 086F4h
 992E   CBBE      res  7, (hl) 
 9930   CD9240    call ifastcopy

Label12:
 9933   EF1840    bcall(_GetCSC)     
 9936   FE04      cp   04h
 9938   284C      jr   z, Label8
 993A   FE01      cp   01h
 993C   CAF39E    jp   z, 09EF3h
 993F   FE03      cp   03h
 9941   CA629F    jp   z, 09F62h
 9944   FE02      cp   02h
 9946   CA929F    jp   z, 09F92h
 9949   FE32      cp   32h
 994B   CAB9A0    jp   z, 0A0B9h
 994E   FE31      cp   31h
 9950   CAF9A0    jp   z, 0A0F9h
 9953   FE09      cp   09h
 9955   CAB5A1    jp   z, 0A1B5h
 9958   FE36      cp   36h
 995A   CAB5A1    jp   z, 0A1B5h
 995D   FE28      cp   28h
 995F   2813      jr   z, Label9
 9961   FE30      cp   30h
 9963   2809      jr   z, Label10
 9965   FE2A      cp   2Ah
 9967   2811      jr   z, Label11
 9969   CD5E41    call general_key_routine
 996C   18C5      jr   Label12

Label10:
 996E   CD5841    call options_screen
 9971   C3BD9D    jp   09DBDh

Label9:
 9974   CD5541    call folder_menu_start
 9977   C3A89D    jp   09DA8h

Label11:
 997A   CD9441    call move_gui_prog
 997D   C3A89D    jp   09DA8h
 9980   21F486    ld   hl, 086F4h
 9983   CB7E      bit  7, (hl) 
 9985   C9        ret          

Label8:
 9986   ED5B9C96  ld   de, (0969Ch) 
 998A   2AF086    ld   hl, (086F0h) 
 998D   CD0141    call cphlde
 9990   2836      jr   z, Label13
 9992   CD0D41    call getnextgoodprog
 9995   ED5B9C96  ld   de, (0969Ch) 
 9999   CD0141    call cphlde
 999C   282A      jr   z, Label13
 999E   21A296    ld   hl, 096A2h
 99A1   35        dec  (hl)    
 99A2   35        dec  (hl)    
 99A3   3A9E96    ld   a, (0969Eh)  
 99A6   FE0B      cp   0Bh
 99A8   CAB59F    jp   z, 09FB5h
 99AB   CDD2A1    call 0A1D2h
 99AE   CDA39E    call 09EA3h
 99B1   2006      jr   nz, Label14
 99B3   CD42A1    call 0A142h
 99B6   CDA5A1    call 0A1A5h

Label14:
 99B9   3A9E96    ld   a, (0969Eh)  
 99BC   D607      sub  07h
 99BE   329E96    ld   (0969Eh), a  
 99C1   CDA39E    call 09EA3h
 99C4   C0        ret  nz      
 99C5   C34B9E    jp   09E4Bh

Label13:
 99C8   CDA39E    call 09EA3h
 99CB   CA569E    jp   z, 09E56h
 99CE   AF        xor  a       
 99CF   C9        ret          
 99D0   ED5B9C96  ld   de, (0969Ch) 
 99D4   2AF286    ld   hl, (086F2h) 
 99D7   CD0141    call cphlde
 99DA   28EC      jr   z, Label13
 99DC   CD1041    call getprevgoodprog
 99DF   ED5B9C96  ld   de, (0969Ch) 
 99E3   CD0141    call cphlde
 99E6   202D      jr   nz, Label15
 99E8   ED5B9E96  ld   de, (0969Eh) 
 99EC   7A        ld   a, d    
 99ED   FE2E      cp   2Eh
 99EF   20D7      jr   nz, Label13
 99F1   7B        ld   a, e    
 99F2   FE28      cp   28h
 99F4   38D2      jr   c, Label13
 99F6   CDA39E    call 09EA3h
 99F9   CCA5A1    call z, 0A1A5h
 99FC   11272E    ld   de, 02E27h
 99FF   ED539E96  ld   (0969Eh), de 
 9A03   2A9C96    ld   hl, (0969Ch) 
 9A06   22EE86    ld   (086EEh), hl 
 9A09   CD42A1    call 0A142h
 9A0C   2A2E98    ld   hl, (pTemp) 
 9A0F   229C96    ld   (0969Ch), hl 
 9A12   C339A0    jp   0A039h

Label15:
 9A15   21A296    ld   hl, 096A2h
 9A18   34        inc  (hl)    
 9A19   34        inc  (hl)    
 9A1A   3A9E96    ld   a, (0969Eh)  
 9A1D   FE2E      cp   2Eh
 9A1F   CA25A0    jp   z, 0A025h
 9A22   CDDFA1    call 0A1DFh
 9A25   CDA39E    call 09EA3h
 9A28   2006      jr   nz, Label16
 9A2A   CD42A1    call 0A142h
 9A2D   CDA5A1    call 0A1A5h

Label16:
 9A30   3A9E96    ld   a, (0969Eh)  
 9A33   C607      add  a, 07h
 9A35   329E96    ld   (0969Eh), a  
 9A38   CDA39E    call 09EA3h
 9A3B   C0        ret  nz      
 9A3C   C34B9E    jp   09E4Bh
 9A3F   ED5B9C96  ld   de, (0969Ch) 
 9A43   2AF286    ld   hl, (086F2h) 
 9A46   CD0141    call cphlde
 9A49   CA569E    jp   z, 09E56h
 9A4C   3A9F96    ld   a, (0969Fh)  
 9A4F   FE2E      cp   2Eh
 9A51   CA569E    jp   z, 09E56h
 9A54   21A296    ld   hl, 096A2h
 9A57   34        inc  (hl)    
 9A58   2A9C96    ld   hl, (0969Ch) 
 9A5B   CD0D41    call getnextgoodprog
 9A5E   229C96    ld   (0969Ch), hl 
 9A61   CD42A1    call 0A142h
 9A64   CDA5A1    call 0A1A5h
 9A67   3E2E      ld   a, 2Eh
 9A69   329F96    ld   (0969Fh), a  
 9A6C   C34B9E    jp   09E4Bh
 9A6F   3A9F96    ld   a, (0969Fh)  
 9A72   FE03      cp   03h
 9A74   CA569E    jp   z, 09E56h
 9A77   21A296    ld   hl, 096A2h
 9A7A   35        dec  (hl)    
 9A7B   2A9C96    ld   hl, (0969Ch) 
 9A7E   CD1041    call getprevgoodprog
 9A81   229C96    ld   (0969Ch), hl 
 9A84   CD42A1    call 0A142h
 9A87   CDA5A1    call 0A1A5h
 9A8A   3E03      ld   a, 03h
 9A8C   329F96    ld   (0969Fh), a  
 9A8F   C34B9E    jp   09E4Bh
 9A92   CDAF41    call Decrease_Cur_Element
 9A95   CDECA1    call 0A1ECh
 9A98   CDD2A1    call 0A1D2h
 9A9B   21A196    ld   hl, 096A1h
 9A9E   35        dec  (hl)    
 9A9F   35        dec  (hl)    
 9AA0   CDA39E    call 09EA3h
 9AA3   2006      jr   nz, Label17
 9AA5   CDA5A1    call 0A1A5h
 9AA8   CD42A1    call 0A142h

Label17:
 9AAB   215A95    ld   hl, 0955Ah
 9AAE   11AE95    ld   de, 095AEh
 9AB1   0621      ld   b, 21h

Label19:
 9AB3   0E0A      ld   c, 0Ah

Label18:
 9AB5   7E        ld   a, (hl) 
 9AB6   12        ld   (de), a 
 9AB7   1B        dec  de      
 9AB8   2B        dec  hl      
 9AB9   0D        dec  c       
 9ABA   20F9      jr   nz, Label18
 9ABC   2B        dec  hl      
 9ABD   2B        dec  hl      
 9ABE   1B        dec  de      
 9ABF   1B        dec  de      
 9AC0   10F1      djnz Label19
 9AC2   21D193    ld   hl, 093D1h
 9AC5   0605      ld   b, 05h
 9AC7   AF        xor  a       

Label21:
 9AC8   0E0A      ld   c, 0Ah

Label20:
 9ACA   77        ld   (hl), a 
 9ACB   23        inc  hl      
 9ACC   0D        dec  c       
 9ACD   20FB      jr   nz, Label20
 9ACF   23        inc  hl      
 9AD0   23        inc  hl      
 9AD1   10F5      djnz Label21
 9AD3   2A9C96    ld   hl, (0969Ch) 
 9AD6   3A9F96    ld   a, (0969Fh)  
 9AD9   FE2E      cp   2Eh
 9ADB   CC1041    call z, getprevgoodprog
 9ADE   E5        push hl      
 9ADF   CD1F41    call getinfo
 9AE2   218384    ld   hl, OP2
 9AE5   11080B    ld   de, 00B08h
 9AE8   CDA740    call setvputs
 9AEB   E1        pop  hl      
 9AEC   CD0D41    call getnextgoodprog
 9AEF   CD1F41    call getinfo
 9AF2   218384    ld   hl, OP2
 9AF5   11330B    ld   de, 00B33h
 9AF8   CDA740    call setvputs
 9AFB   CDA39E    call 09EA3h
 9AFE   C0        ret  nz      
 9AFF   C3439E    jp   09E43h
 9B02   CDDFA1    call 0A1DFh
 9B05   CDA39E    call 09EA3h
 9B08   2006      jr   nz, Label22
 9B0A   CDA5A1    call 0A1A5h
 9B0D   CD42A1    call 0A142h

Label22:
 9B10   2A9C96    ld   hl, (0969Ch) 
 9B13   22EE86    ld   (086EEh), hl 
 9B16   CDAC41    call Increase_Cur_Element
 9B19   21A196    ld   hl, 096A1h
 9B1C   34        inc  (hl)    
 9B1D   34        inc  (hl)    
 9B1E   CDF9A1    call 0A1F9h
 9B21   212594    ld   hl, 09425h
 9B24   11D193    ld   de, 093D1h
 9B27   0621      ld   b, 21h

Label24:
 9B29   0E0A      ld   c, 0Ah

Label23:
 9B2B   7E        ld   a, (hl) 
 9B2C   12        ld   (de), a 
 9B2D   13        inc  de      
 9B2E   23        inc  hl      
 9B2F   0D        dec  c       
 9B30   20F9      jr   nz, Label23
 9B32   23        inc  hl      
 9B33   23        inc  hl      
 9B34   13        inc  de      
 9B35   13        inc  de      
 9B36   10F1      djnz Label24
 9B38   217595    ld   hl, 09575h
 9B3B   0605      ld   b, 05h
 9B3D   AF        xor  a       

Label26:
 9B3E   0E0A      ld   c, 0Ah

Label25:
 9B40   77        ld   (hl), a 
 9B41   23        inc  hl      
 9B42   0D        dec  c       
 9B43   20FB      jr   nz, Label25
 9B45   23        inc  hl      
 9B46   23        inc  hl      
 9B47   10F5      djnz Label26
 9B49   2A9C96    ld   hl, (0969Ch) 
 9B4C   3A9F96    ld   a, (0969Fh)  
 9B4F   FE2E      cp   2Eh
 9B51   CC1041    call z, getprevgoodprog
 9B54   E5        push hl      
 9B55   CD1F41    call getinfo
 9B58   218384    ld   hl, OP2
 9B5B   11082E    ld   de, 02E08h
 9B5E   CDA740    call setvputs
 9B61   E1        pop  hl      
 9B62   ED5BF286  ld   de, (086F2h) 
 9B66   CD0141    call cphlde
 9B69   2007      jr   nz, customHeight
 9B6B   3A9199    ld   a, (Str1)  
 9B6E   CB47      bit  0, a    
 9B70   200F      jr   nz, Label27
 9B72   CD0D41    call getnextgoodprog
 9B75   CD1F41    call getinfo
 9B78   218384    ld   hl, OP2
 9B7B   11332E    ld   de, 02E33h
 9B7E   CDA740    call setvputs

Label27:
 9B81   2AEE86    ld   hl, (086EEh) 
 9B84   229C96    ld   (0969Ch), hl 
 9B87   CDA39E    call 09EA3h
 9B8A   C0        ret  nz      
 9B8B   C3439E    jp   09E43h

Label28:
 9B8E   214084    ld   hl, 08440h
 9B91   3600      ld   (hl), 00h
 9B93   C3489E    jp   09E48h
 9B96   CDA5A1    call 0A1A5h
 9B99   2AF086    ld   hl, (086F0h) 
 9B9C   ED5B9C96  ld   de, (0969Ch) 
 9BA0   CD0141    call cphlde
 9BA3   28E9      jr   z, Label28
 9BA5   CD0D41    call getnextgoodprog
 9BA8   ED5B9C96  ld   de, (0969Ch) 
 9BAC   CD0141    call cphlde
 9BAF   28DD      jr   z, Label28
 9BB1   21F486    ld   hl, 086F4h
 9BB4   CBFE      set  7, (hl) 
 9BB6   3A9E96    ld   a, (0969Eh)  
 9BB9   FE0B      cp   0Bh
 9BBB   280C      jr   z, Label29

Label30:
 9BBD   3A9E96    ld   a, (0969Eh)  
 9BC0   FE0B      cp   0Bh
 9BC2   28CA      jr   z, Label28
 9BC4   CDA99E    call 09EA9h
 9BC7   18F4      jr   Label30

Label29:
 9BC9   0605      ld   b, 05h

Label32:
 9BCB   C5        push bc      
 9BCC   CDA99E    call 09EA9h
 9BCF   C1        pop  bc      
 9BD0   2842      jr   z, Label31
 9BD2   10F7      djnz Label32
 9BD4   183E      jr   Label31
 9BD6   CDA5A1    call 0A1A5h
 9BD9   21F486    ld   hl, 086F4h
 9BDC   CBFE      set  7, (hl) 
 9BDE   3A9E96    ld   a, (0969Eh)  
 9BE1   FE2E      cp   2Eh
 9BE3   2824      jr   z, Label33

Label34:
 9BE5   2AF286    ld   hl, (086F2h) 
 9BE8   ED5B9C96  ld   de, (0969Ch) 
 9BEC   CD0141    call cphlde
 9BEF   289D      jr   z, Label28
 9BF1   CD1041    call getprevgoodprog
 9BF4   ED5B9C96  ld   de, (0969Ch) 
 9BF8   CD0141    call cphlde
 9BFB   2891      jr   z, Label28
 9BFD   3A9E96    ld   a, (0969Eh)  
 9C00   FE2E      cp   2Eh
 9C02   288A      jr   z, Label28
 9C04   CDF39E    call 09EF3h
 9C07   18DC      jr   Label34

Label33:
 9C09   0605      ld   b, 05h

Label35:
 9C0B   C5        push bc      
 9C0C   CDF39E    call 09EF3h
 9C0F   C1        pop  bc      
 9C10   2802      jr   z, Label31
 9C12   10F7      djnz Label35

Label31:
 9C14   214084    ld   hl, 08440h
 9C17   3600      ld   (hl), 00h
 9C19   CD42A1    call 0A142h
 9C1C   C3439E    jp   09E43h
 9C1F   213814    ld   hl, 01438h
 9C22   113D5E    ld   de, 05E3Dh
 9C25   AF        xor  a       
 9C26   CD3D41    call filledrectangle
 9C29   2A9C96    ld   hl, (0969Ch) 
 9C2C   CD1F41    call getinfo
 9C2F   219098    ld   hl, Str2
 9C32   110338    ld   de, 03803h
 9C35   C3A740    jp   setvputs
 9C38   3A9199    ld   a, (Str1)  
 9C3B   47        ld   b, a    
 9C3C   FE0D      cp   0Dh
 9C3E   3802      jr   c, Label36
 9C40   060C      ld   b, 0Ch

Label36:
 9C42   11080B    ld   de, 00B08h
 9C45   2A9A96    ld   hl, (0969Ah) 

Label39:
 9C48   C5        push bc      
 9C49   ED53EC86  ld   (saveSScreen), de 
 9C4D   E5        push hl      
 9C4E   CD1F41    call getinfo
 9C51   ED5BEC86  ld   de, (saveSScreen) 
 9C55   218384    ld   hl, OP2
 9C58   CDA740    call setvputs
 9C5B   E1        pop  hl      
 9C5C   ED5BF286  ld   de, (086F2h) 
 9C60   CD0141    call cphlde
 9C63   281B      jr   z, Label37
 9C65   CD0D41    call getnextgoodprog
 9C68   C1        pop  bc      
 9C69   ED5BEC86  ld   de, (saveSScreen) 
 9C6D   7B        ld   a, e    
 9C6E   FE33      cp   33h
 9C70   2805      jr   z, Label38
 9C72   1E33      ld   e, 33h
 9C74   10D2      djnz Label39
 9C76   C9        ret          

Label38:
 9C77   1E08      ld   e, 08h
 9C79   3E07      ld   a, 07h
 9C7B   82        add  a, d    
 9C7C   57        ld   d, a    
 9C7D   10C9      djnz Label39
 9C7F   C9        ret          

Label37:
 9C80   C1        pop  bc      
 9C81   C9        ret          
 9C82   2A9E96    ld   hl, (0969Eh) 
 9C85   3E28      ld   a, 28h
 9C87   84        add  a, h    
 9C88   57        ld   d, a    
 9C89   3E06      ld   a, 06h
 9C8B   85        add  a, l    
 9C8C   5F        ld   e, a    
 9C8D   3E02      ld   a, 02h
 9C8F   C33D41    jp   filledrectangle
 9C92   21D696    ld   hl, ionDetect
 9C95   11E196    ld   de, 096E1h
 9C98   E5        push hl      
 9C99   D5        push de      
 9C9A   010B00    ld   bc, 000Bh
 9C9D   EDB0      ldir         
 9C9F   2A9C96    ld   hl, (0969Ch) 
 9CA2   CD3141    call runprog
 9CA5   E1        pop  hl      
 9CA6   D1        pop  de      
 9CA7   010B00    ld   bc, 000Bh
 9CAA   EDB0      ldir         
 9CAC   C3BD9D    jp   09DBDh
 9CAF   2A9C96    ld   hl, (0969Ch) 
 9CB2   CD1041    call getprevgoodprog
 9CB5   CD1041    call getprevgoodprog
 9CB8   229C96    ld   (0969Ch), hl 
 9CBB   C9        ret          
 9CBC   2A9C96    ld   hl, (0969Ch) 
 9CBF   CD0D41    call getnextgoodprog
 9CC2   CD0D41    call getnextgoodprog
 9CC5   229C96    ld   (0969Ch), hl 
 9CC8   C9        ret          
 9CC9   2A9A96    ld   hl, (0969Ah) 
 9CCC   CD1041    call getprevgoodprog
 9CCF   CD1041    call getprevgoodprog
 9CD2   229A96    ld   (0969Ah), hl 
 9CD5   C9        ret          
 9CD6   2A9A96    ld   hl, (0969Ah) 
 9CD9   CD0D41    call getnextgoodprog
 9CDC   CD0D41    call getnextgoodprog
 9CDF   229A96    ld   (0969Ah), hl 
 9CE2   C9        ret          
 9CE3   54        ld   d, h    
 9CE4   68        ld   l, b    
 9CE5   69        ld   l, c    
 9CE6   73        ld   (hl), e 
 9CE7   2046      jr   nz, 046h
 9CE9   6F        ld   l, a    
 9CEA   6C        ld   l, h    
 9CEB   64        ld   h, h    
 9CEC   65        ld   h, l    
 9CED   72        ld   (hl), d 
 9CEE   2049      jr   nz, 049h
 9CF0   73        ld   (hl), e 
 9CF1   2045      jr   nz, 045h
 9CF3   6D        ld   l, l    
 9CF4   70        ld   (hl), b 
 9CF5   74        ld   (hl), h 
 9CF6   79        ld   a, c    
 9CF7   00        nop          
 9CF8   2106A2    ld   hl, 0A206h
 9CFB   110B1B    ld   de, 01B0Bh
 9CFE   CDA740    call setvputs
 9D01   CD9240    call ifastcopy

Label41:
 9D04   EF1840    bcall(_GetCSC)     
 9D07   FE09      cp   09h
 9D09   2812      jr   z, Label40
 9D0B   FE36      cp   36h
 9D0D   280E      jr   z, Label40
 9D0F   FE28      cp   28h
 9D11   280A      jr   z, Label40
 9D13   FE30      cp   30h
 9D15   CA919E    jp   z, 09E91h
 9D18   CD5E41    call general_key_routine
 9D1B   18E7      jr   Label41

Label40:
 9D1D   C3979E    jp   09E97h
 9D20   0E        ld   c, 0h
 9D22   
 ; Disassembled by Jimmy Conner - timagic@yahoo.com
 ; @ 25/08/02 02:35:01 AM
 ; Disassembler v1.7
 ; Total Opcodes: 514
 ; Total Data: 0
 ; Z80 AC   -  z80.us.fornax.com
 ; Personal -  www.timagic.cjb.net
.end
end
