Rev 507 |
Rev 646 |
Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| Download
| RSS feed
| ?url?
;LAST UPDATE: 08.10.2012 savelij
;GET_1F DI
; LD IX,0X2FC1 ;OUT(1F),D0
; CALL DOSIX
; LD A,8
; LD C,0X1F
; LD IX,0X2A53 ;OUT(C),A
; CALL DOSIX
; LD B,0
; LD A,0XFF
; LD (0X5CD8),A
; CALL READ_1F
; PUSH AF
; LD A,0XC9
; LD (0X5CC2),A
; XOR A
; LD IX,0X1FF3 ;OUT(FF),A
; CALL DOSIX
; LD IX,0X1FEB ;OUT(FF),(5D16)|3C
; CALL DOSIX
; LD IX,0X2FC1 ;OUT(1F),D0
; CALL DOSIX
; POP AF
; EI
; RET
;READ_1F LD (RD1F_SP+1),SP
; LD A,0XC3
; LD (0X5CC2),A
; LD HL,RD1F_SP
; LD (0X5CC3),HL
; LD IX,0X2076
; JP DOSIX
;RD1F_SP LD SP,0
; XOR A
; RET
;G1FKNOW LD A,(yIKNOW)
; AND A
; RET Z
; PUSH IX
; CALL GET_1F
; POP IX
; LD HL,OLD_1F
; CP (HL)
; RET Z
; POP HL
;_IKNOW CALL GLUDIN
; LD A,0XC3
; LD (0X5CC2),A
; LD HL,ONERR
; LD (0X5CC3),HL
; CALL S_FACE
; LD IX,mIKNOW
; CALL DRAWWIN
; CALL NAMEROM
; CALL PRINTTIME
; LD C,0X3F
; XOR A
; LD IX,0X2A53
; CALL DOSIX
; LD A,0X5F
; CALL DOSIX
; LD C,0X1F
; LD A,0X0C
; CALL DOSIX
; LD IX,0X3EF5
; CALL DOSIX
GLUBOOT LD HL,FLAGS
RES 3,(HL) ;
LD HL,ADR_CAT
LD DE,8
LD BC,0X0105
CALL TO_DOS4BAS ; 9
LD A,(ADR_CAT+0XE7)
CP 0X10 ;
TR_DOS
JP NZ,CMP_VIRTUAL;PRT_NONETRDOS ;,
TR-DOS
LD HL,ADR_CAT
LD DE,0
LD BC,0X0905
CALL TO_DOS4BAS ; TR-DOS
LD A,(ADR_CAT+0X8E7)
CP 0X10 ;
TR_DOS
JP NZ,_STUPID
; CALL GET_1F ;
TR-DOS
; LD (OLD_1F),A
LD IX,ADR_CAT
LD DE,0X10
LD A,(ADR_CAT+0X8E4)
AND A
JP Z,NO_BAS
LD B,A ;
LD C,0 ;
EXX
PUSH IX
POP DE
EXX
FIND_BASIC LD A,(IX+8)
CP "B" ;
JR NZ,FINDBAS1
LD A,(IX+0)
DEC A ;
JR Z,FINDBAS1
EXX
PUSH IX
POP HL ;
REPT 16
LDI
ENDM
EXX
INC C
FINDBAS1 ADD IX,DE
DJNZ FIND_BASIC
LD IX,WIN_FILES ;
OUT_HOB LD (IX+7),0
LD (IX+8),C
LD (IX+9),B ;
LD (IX+0X0A),0
LD (IX+0X0B),0 ;
REOUT_HOB LD A,B
OR C ;
JP Z,NO_BAS ;
0,
RES 2,(IY+55) ;
LD A,B
AND A
LD A,C
JR NZ,FINDBAS2
CP H_FILE-1
JR C,FINDBAS2
SET 2,(IY+55) ;
LD A,H_FILE-2
FINDBAS2 LD (KOL4OUT),A ;
ADD A,2
LD (IX+2),A ;
LD (IX+3),V_FILE ;
FINDBAS6 LD HL,FLAGS
BIT 3,(HL)
JR Z,FINDBAS5 ;
TR-DOS,
INC (IX+3)
LD A,(IX+2) ;
FAT,
PUSH AF ;
LD (IX+2),H_FILE
CALL WINW ;
POP AF
LD (IX+2),A
JR FINDBAS7
FINDBAS5 CALL WINW ;
FINDBAS7
; LD B,(IX+2)
; DEC B
; DEC B
; LD C,"A"
; LD DE,HOT_KEY
;FINDBAS5 PUSH BC
; LD A,C
; LD (DE),A
; LD HL,HOT_KEYS
; CALL NEXT
; POP BC
; INC C
; DJNZ FINDBAS5
CALL OUT_TEK_DIR ;
; BIT 2,(IY+55)
; JP Z,_RULILKA
; CALL RIGHT_SIDE ;
-2,
JP _RULILKA
;
OUT_TEK_DIR LD L,(IX+0X0A) ; TR-DOS
LD H,(IX+0X0B) ;
LD E,(IX+7) ;
XOR A
LD D,A
SBC HL,DE ;
LD DE,ADR_CAT
ADD HL,HL
LD A,(FLAGS)
AND 8
JR NZ,OUT_TEK_FAT ;
FAT
ADD HL,HL
ADD HL,HL
ADD HL,HL ;
ADD HL,DE ;
LD C,(IX+2)
DEC C
DEC C ;
LD D,(IX+0)
LD E,(IX+1)
INC D
INC D
INC E ;
FINDBAS3 LD B,8 ;
PUSH DE
FINDBAS4 LD A,(HL)
INC HL
CALL PRT_SYM
DJNZ FINDBAS4
LD DE,8 ;8
,
8
ADD HL,DE
POP DE
INC E
DEC C
JR NZ,FINDBAS3 ;
RET
; FAT
OUT_TEK_FAT ADD HL,DE
LD D,(IX+0)
LD E,(IX+1)
INC D
INC D
INC E ;
LD C,0
KOL4OUT EQU $-1
OTF2 PUSH BC
LD C,(HL)
INC HL
LD B,(HL)
INC HL
PUSH HL
PUSH DE
LD A,6
CALL COM_FAT
DB Positf
CALL COM_FAT
DB Getfzap
POP DE
PUSH DE
LD BC,0X0B
ADD HL,BC
LD A,(HL)
SBC HL,BC
AND 0X10
LD A,0
JR NZ,OTF4
LD A,1
OTF4 CALL PRTSYMALT
LD B,8
OTF1 LD A,(HL)
INC HL
CALL PRT_SYM
DJNZ OTF1
POP DE
POP HL
POP BC
INC E
DEC C
JR NZ,OTF2
RET
NO_BAS LD IX,NOBASIC
CALL WINW
JP _RULILKA
RUNFILE DI
CALL SHUT2AY ; AY
LD L,(IX+0X0A)
LD H,(IX+0X0B) ;
LD DE,ADR_CAT
ADD HL,HL
ADD HL,HL
ADD HL,HL
ADD HL,HL
ADD HL,DE ;
LD DE,RUNNAM
LD BC,8
LDIR
LD HL,0X3E08+0XA7
LD DE,0XFFFF
LD C,0XA8 ;21 ᨬ¢®« UDG
LDDR
LD HL,RUN_BASIC
LD DE,0X5D3B
LD BC,ERUN_BASIC-RUN_BASIC
LDIR ;
CALL MEMSET ;
CALL FOR_RUN
EI
JP 0X1B7D ;
; LD BC,0XFE8F
; CALL 0X1EB7
; LD HL,0X1303
; PUSH HL
; LD (0X5C3D),SP
; LD HL,(0X5C4F)
; LD DE,0X0F
; ADD HL,DE
; LD DE,0X15BE
; EX DE,HL
; LD BC,4
; LDIR
; RES 4,(IY+1)
; SET 7,(IY+1)
; LD HL,0X1B7D
; PUSH HL
; LD HL,LOC_5BEA
; PUSH HL
; LD HL,0X2970
; PUSH HL
; LD HL,0X2920
; PUSH HL
; LD HL,0X294A
; PUSH HL
; JP 0X3D2F
;LOC_5BEA LD HL,(0X5C61)
; LD A,(HL)
; DEC HL
; LD L,(HL)
; LD H,A
; LD (0X5C42),HL
; XOR A
; LD (0X5C44),A
; RET
E_LINE EQU 0X5C59
K_CUR EQU 0X5C5B
WORKSP EQU 0X5C61
STKBOT EQU 0X5C63
STKEND EQU 0X5C65
TRD_5D0E EQU 0X5D0E
FOR_RUN
; LD HL,BAS4TAPE
; LD DE,0X5C3A
; LD BC,EBAS4TAPE-BAS4TAPE
; LDIR ;
FOR ONLY TAPE
; LD HL,0X3D21
; CALL TODOS4RUN
; LD A,0XFE
; LD (TRD_5D0E),A
; LD HL,(E_LINE)
; LD (HL),0XF7
; INC HL
; LD (HL),0X22
; INC HL
; LD DE,RUNNAM
; LD BC,8
; EX DE,HL
; LDIR
; EX DE,HL
; LD (HL),0X22
; INC HL
; LD (K_CUR),HL
; LD (HL),0X0D
; INC HL
; LD (HL),0X80
; INC HL
; LD (WORKSP),HL
; LD (STKBOT),HL
; LD (STKEND),HL
SET 3,(IY+1)
LD IY,0X5C3A
LD (IY),0XFF
SET 7,(IY+1)
RES 4,(IY+1)
LD HL,0X2758
EXX
LD A,0XC9
LD (0X5CC2),A
LD HL,0
LD (0X5C42),HL
XOR A
LD (0X5C44),A
RET
LD HL,0X2EF
EI
TODOS4RUN PUSH HL
JP 0X3D2F
; LD BC,0X5FFF
; CALL 0X1EB7 ;
; LD (0X5C3D),SP
; RET
;
1-4 (A-D)
NEXTDRIVE LD A,(TXT_DRIVE) ;
INC A ;+1,
SUB 0X10 ;
CP "5" ;
4
JR C,SELDRV1
SUB 4 ;
JR SELDRV1
NEXTVIRT LD HL,MAINLOP
PUSH HL
LD A,(FLAGS)
AND 4
RET Z
LD H,0X0F
CALL READCMOS
INC A
CP 4
JR C,NEXTVIRT1
XOR A
NEXTVIRT1 LD L,A
ADD A,"A"
LD (VIRT_DRIVE),A
CALL WRITECMOS
CALL REST2X2
CALL PRT_VIRTDRV
LD A,(FLAGS)
AND 2
RET Z
JP DRAW_MOUSE
;
SELDRV LD A,(0X5C08) ;
SELDRV1 SUB "1" ;
LD HL,MAINLOP ;
PUSH HL
SELDRVPP LD (DRV_SYM),A
LD L,A
LD A,(FLAGS)
AND 4
RET Z ;
,
LD H,0X10
CALL WRITECMOS ;
CALL SET_DRIVE ;
CALL REST2X2 ;
CALL PRT_DRV_SYM ;
LD A,(FLAGS)
AND 2
RET Z
JP DRAW_MOUSE ;
;FIX mouse key if no mouse
ONERNCLS LD A,(FLAGS)
AND 2
JR Z,ONERNC1
LD A,0XFA
IN A,(0XDF)
RRA
JP NC,_STUPID
ONERNC1 POP AF
EX (SP),HL
RET
;
ONERR EX (SP),HL
PUSH AF
LD A,H
CP HIGH (0X0D6B)
JR NZ,ONERNCLS
LD A,L
CP LOW (0X0D6B)
JR NZ,ONERNCLS
POP HL
POP HL
POP HL
POP HL
POP HL
EI
CALL GLUDIN
LD HL,0X5CF4
LD A,(HL) ;
INC A
CALL DIV10
LD (NUM_SEC_TXT+1),A
LD A,D
LD (NUM_SEC_TXT),A
INC HL
LD A,(HL) ;
SRL A
LD E,A
ADC A,"0"
SUB E
LD (SIDE_DISK),A ;
LD A,E
CALL DIV10
LD (NUM_TRK_TXT+1),A
LD A,D
LD (NUM_TRK_TXT),A
LD IX,DSK_ERR ;
CALL WINW
JP _RULILKA
RESET_VG
; LD C,0XFF
; XOR A
; LD IX,0X2A53 ;OUT(C),A
; CALL DOSIX
; LD A,(DRV_SYM)
; OR 0X3C
; CALL DOSIX
; LD A,0X68 ;è £ § ¤
; LD C,0X1F
; CALL DOSIX
LD HL,DSTUPID
LD (0X5C3D),HL
LD A,0XC3
LD (0X5CC2),A
LD HL,ONERR
LD (0X5CC3),HL
RET
DOSIX PUSH IX
JP TO_DOS
;
,
640
DISK_NONE PEC_ON SHADOW_BF
; LD A,1
; OUT (PEVO_CONF),A
LD A,PAGE_RAMDISK
LD BC,WIN_P1
OUT (C),A
LD HL,0X7FFF
LD A,(HL)
DEC H
CP "R"
JR NZ,DISK_NONE1
LD A,(HL)
CP "D"
DISK_NONE1 EX AF,AF'
LD A,0XFA
OUT (C),A
PEC_OFF SHADOW_BF
; XOR A
; OUT (PEVO_CONF),A
EX AF,AF'
JP NZ,CREATE_TRDRAM ;
,
RET
;FormTR SRL A
; LD (_phystr),A
; RLA
; LD C,2 ;¯®§¨æ¨®¨à-¥ «®£.tr A
; CALL TO_DOS4BAS
; LD A,0XFF
; LD (0X5CD8),A
; LD HL,SeCS
; LD (0X5CE6),HL
; LD E,0
;_phystr EQU $-1
; LD IX,0X1FFD ;format track
; JR DOSIX
DIV10 LD D,0X30-1
INC D
SUB 0X0A
JR NC,$-3
ADD A,0X0A+0X30
RET
_RETRY LD A,"R"
JR $+4
_IGNORE LD A,"I"
LD HL,0X3F7E
EX (SP),HL
DI
JP TO_DOS