.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