mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 01:11:48 +03:00
fixet bug with small partitions. Some small fixes
This commit is contained in:
parent
201fa03a29
commit
6af1575f2b
@ -66,6 +66,7 @@
|
||||
include 'API/Environ.ASM'
|
||||
include 'API/Lib_Sub.asm'
|
||||
include "API/EXECUTE.ASM"
|
||||
include "API/Print.asm"
|
||||
|
||||
|
||||
|
||||
|
||||
74
DSS/API/Print.asm
Normal file
74
DSS/API/Print.asm
Normal file
@ -0,0 +1,74 @@
|
||||
;///////////////////////////////////////////////////////////////////////
|
||||
; ”ãªæ¨ï #5F. ‚뢮¤ ᨬ¢®« ¯à¨â¥à ¡¥§ ®¦¨¤ ¨ï.
|
||||
;
|
||||
; ˆâ¥à¯à¥â æ¨ï ¡ ©â á®áâ®ï¨ï ¯à¨â¥à :
|
||||
; 0..2 - ¥ ¨á¯®«ì§ãîâáï, ®¡ëç® ãáâ. ¢ "1"
|
||||
; 3 - ®è¨¡ª ¯à¨â¥à - ¥áâì/¥â (1/0)
|
||||
; 4 - ¯à¨â¥à ¯®¤ª«îç¥/¥ ¯®¤ª«îç¥ (1/0)
|
||||
; 5 - ¡ã¬ £¨ ¥â/¥áâì (1/0)
|
||||
; 6 - ¯à¨â¥à £®â®¢/¢ë¢®¤¨â ®ç¥à¥¤®© ᨬ¢®« (1/0)
|
||||
; 7 - ¯à¨â¥à ᢮¡®¤¥/§ ïâ (1/0)
|
||||
;
|
||||
; ¢å®¤: A - ᨬ¢®«
|
||||
; ¢ë室: B - ᨬ¢®«
|
||||
; CF - ®è¨¡ª , A=¡ ©â á®áâ®ï¨ï (¡¨âë 7..3)
|
||||
;///////////////////////////////////////////////////////////////////////
|
||||
Z84_SP:
|
||||
.LPT_A EQU Z84.SIO.Ch_B.Ctrl
|
||||
.LPT_B EQU Z84.PIO.Port_A.Data
|
||||
.LPT1_C EQU Z84.PIO.Port_A.Command
|
||||
.LPT2_D EQU Z84.PIO.Port_B.Data
|
||||
.LPT2_C EQU Z84.PIO.Port_B.Command
|
||||
;
|
||||
PRINT: AND A
|
||||
LD B,A ; á®åà 塞 ᨬ¢®«
|
||||
;
|
||||
LD A,R
|
||||
DI
|
||||
PUSH AF
|
||||
; reg 0
|
||||
XOR A
|
||||
OUT (Z84_SP.LPT_A),A
|
||||
LD A,%0001'0000 ; Reset EXT/STATUS interrupts
|
||||
OUT (Z84_SP.LPT_A),A
|
||||
XOR A
|
||||
OUT (Z84_SP.LPT_A),A
|
||||
IN A,(Z84_SP.LPT_A) ; IN (1Bh): bit 5 - busy, Bit 3 - Ack
|
||||
LD C,A
|
||||
BIT 5,A ; IN (19h): bit 5 - Paper Enable, Bit 3 - Select
|
||||
JR NZ,.LPTBUSY
|
||||
AND %11011000
|
||||
JR Z,.LPTBUSY
|
||||
LD A,B ; ¢®ááâ ¢«¨¢ ¥¬ ᨬ¢®«
|
||||
OUT (Z84_SP.LPT_B),A
|
||||
POP AF
|
||||
RET PO
|
||||
EI
|
||||
RET
|
||||
;
|
||||
.LPTBUSY: POP AF
|
||||
LD A,C
|
||||
SCF
|
||||
RET PO
|
||||
EI
|
||||
RET
|
||||
; ; ;
|
||||
|
||||
; B - SYMBOL
|
||||
; CF = 1 - PRINTER BUSY
|
||||
PRINT_INIT: DI
|
||||
LD A,#CF
|
||||
; port #1F ⮫쪮 ç¥p¥§ LD BC,1F : Out (BC),reg (¢ «ìâ¥à¥ ¨¤ñâ ¯¥à¥å¢ â í⮣® ¯®àâ ¯à®æ , ¥á«¨ ® ¢ ª®¬ ¤¥  㪠§ )
|
||||
LD BC,Z84_SP.LPT2_C
|
||||
OUT (C),A
|
||||
;[x] 29/9/23
|
||||
;LD A,#63
|
||||
LD A,63
|
||||
;
|
||||
OUT (C),A
|
||||
LD A,#C0 ; Bit 7 - Select (1), Bit 6 - Auto_Line_Feed (1)
|
||||
OUT (Z84_SP.LPT2_D),A
|
||||
LD A,#0F ; Init printer port for Out
|
||||
OUT (Z84_SP.LPT1_C),A
|
||||
RET
|
||||
;///////////////////////////////////////////////////////////////////////
|
||||
@ -790,7 +790,7 @@ RD_BPB: ; LD C,SLOT3
|
||||
RLA
|
||||
;
|
||||
LD C,A
|
||||
LD B,0 ; BC - File handels in sectors
|
||||
LD B,0 ; BC - File handels per sector
|
||||
;;;;
|
||||
IF COMPILE_UNUSED_CODE
|
||||
LD (CORE_BUFFERS.FatBuffer.FilesPerSector),A
|
||||
@ -861,9 +861,9 @@ RD_BPB: ; LD C,SLOT3
|
||||
LD HL,(CORE_BUFFERS.SECTOR_BUFFER + BOOT_SECTOR.SectorsPerDrive)
|
||||
LD A,H
|
||||
OR L
|
||||
LD DE,(CORE_BUFFERS.FatBuffer.FirstDataSector_L)
|
||||
JP NZ,.HDDSMAL
|
||||
;
|
||||
LD DE,(CORE_BUFFERS.FatBuffer.FirstDataSector_L)
|
||||
EXX
|
||||
LD HL,(CORE_BUFFERS.SECTOR_BUFFER + BOOT_SECTOR.BPB_BIG_TOTAL_SECTORS_H)
|
||||
PUSH HL ; Total Sectors high
|
||||
|
||||
@ -107,14 +107,7 @@ RMKTIME:
|
||||
; E - ¬¥áïæ
|
||||
; IX - £®¤
|
||||
; ¢ë室: H - ¤¥ì ¥¤¥«¨ (1 - ¢®áªà¥á¥ì¥)
|
||||
CalcDayOfWeek: ;!FIXIT ¢ëç¨á«ïâì ¤¥ì ¥¤¥«¨
|
||||
; x = (14 ? ¬¥áïæ) / 12
|
||||
; y = £®¤ ? x
|
||||
; m = ¬¥áïæ + 12 * x ? 2
|
||||
; „¥ì<C2AD>¥¤¥«¨ = (7000 + (¤¥ì + y + y/4 ? y/100 + y/400 + (31 * m)/12)) mod 7
|
||||
; ‚ᥠ¤¥«¥¨ï 楫®ç¨á«¥ë¥ (®áâ ⮪ ®â¡à áë¢ ¥âáï).
|
||||
;
|
||||
LD A,D
|
||||
CalcDayOfWeek: LD A,D
|
||||
LD (.day),A
|
||||
; x = (14 ? ¬¥áïæ) / 12
|
||||
; y = £®¤ ? x
|
||||
@ -203,6 +196,11 @@ CalcDayOfWeek: ;!FIXIT
|
||||
LD H,L
|
||||
INC H
|
||||
RET
|
||||
; x = (14 ? ¬¥áïæ) / 12
|
||||
; y = £®¤ ? x
|
||||
; m = ¬¥áïæ + 12 * x ? 2
|
||||
; „¥ì<C2AD>¥¤¥«¨ = (7000 + (¤¥ì + y + y/4 ? y/100 + y/400 + (31 * m)/12)) mod 7
|
||||
; ‚ᥠ¤¥«¥¨ï 楫®ç¨á«¥ë¥ (®áâ ⮪ ®â¡à áë¢ ¥âáï).
|
||||
;----------------------------------------------------------------------;
|
||||
|
||||
|
||||
|
||||
@ -690,94 +690,7 @@ BACKTXT: PUSH AF
|
||||
POP BC
|
||||
NOBACKT: POP AF
|
||||
RET
|
||||
|
||||
;/////////////////////////////////////////////////////////////////////
|
||||
; ”ãªæ¨ï #5F. ‚뢮¤ ᨬ¢®« ¯à¨â¥à ¡¥§ ®¦¨¤ ¨ï.
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;
|
||||
; ˆâ¥à¯à¥â æ¨ï ¡ ©â á®áâ®ï¨ï ¯à¨â¥à :
|
||||
; 0..2 - ¥ ¨á¯®«ì§ãîâáï, ®¡ëç® ãáâ. ¢ "1"
|
||||
; 3 - ®è¨¡ª ¯à¨â¥à - ¥áâì/¥â (1/0)
|
||||
; 4 - ¯à¨â¥à ¯®¤ª«îç¥/¥ ¯®¤ª«îç¥ (1/0)
|
||||
; 5 - ¡ã¬ £¨ ¥â/¥áâì (1/0)
|
||||
; 6 - ¯à¨â¥à £®â®¢/¢ë¢®¤¨â ®ç¥à¥¤®© ᨬ¢®« (1/0)
|
||||
; 7 - ¯à¨â¥à ᢮¡®¤¥/§ ïâ (1/0)
|
||||
;
|
||||
; ¢å®¤: A - ᨬ¢®«
|
||||
; ¢ë室: B - ᨬ¢®«
|
||||
; CF - ®è¨¡ª , A=¡ ©â á®áâ®ï¨ï (¡¨âë 7..3)
|
||||
;/////////////////////////////////////////////////////////////////////
|
||||
;!FIXIT § ¬¥¨âì sp2000.inc
|
||||
LPT_A EQU #1B
|
||||
LPT_B EQU #1C
|
||||
|
||||
PRINT: AND A
|
||||
LD B,A ; á®åà 塞 ᨬ¢®«
|
||||
;
|
||||
LD A,R
|
||||
DI
|
||||
PUSH AF
|
||||
;
|
||||
XOR A
|
||||
OUT (LPT_A),A
|
||||
LD A,#10
|
||||
OUT (LPT_A),A
|
||||
XOR A
|
||||
OUT (LPT_A),A
|
||||
IN A,(LPT_A) ; IN (1Bh): bit 5 - busy, Bit 3 - Ack
|
||||
LD C,A
|
||||
BIT 5,A ; IN (19h): bit 5 - Paper Enable, Bit 3 - Select
|
||||
JR NZ,LPTBUSY
|
||||
AND %11011000
|
||||
JR Z,LPTBUSY
|
||||
LD A,B ; ¢®ááâ ¢«¨¢ ¥¬ ᨬ¢®«
|
||||
OUT (LPT_B),A
|
||||
POP AF
|
||||
RET PO
|
||||
EI
|
||||
RET
|
||||
LPTBUSY:
|
||||
POP AF
|
||||
LD A,C
|
||||
SCF
|
||||
RET PO
|
||||
EI
|
||||
RET
|
||||
|
||||
; B - SYMBOL
|
||||
; CF = 1 - PRINTER BUSY
|
||||
;!FIXIT § ¬¥¨âì sp2000.inc
|
||||
LPT1_C EQU #1D
|
||||
LPT2_D EQU #1E
|
||||
LPT2_C EQU #1F
|
||||
PRINT_INIT:
|
||||
DI
|
||||
LD A,#CF ; port #1F ⮫쪮 ç¥p¥§ LD BC,1F : Out (BC),reg (¢ «ìâ¥à¥ ¨¤ñâ ¯¥à¥å¢ â í⮣® ¯®àâ ¯à®æ , ¥á«¨ ® ¢ ª®¬ ¤¥  㪠§ )
|
||||
LD BC,LPT2_C
|
||||
OUT (C),A
|
||||
;[x] 29/9/23
|
||||
;LD A,#63
|
||||
LD A,63
|
||||
;
|
||||
OUT (C),A
|
||||
LD A,#C0 ; Bit 7 - Select (1), Bit 6 - Auto_Line_Feed (1)
|
||||
OUT (LPT2_D),A
|
||||
LD A,#0F ; Init printer port for Out
|
||||
OUT (LPT1_C),A
|
||||
|
||||
; ª« ¢
|
||||
XOR A ;LD A,0
|
||||
OUT (Z84.SIO.Ch_A.Ctrl),A
|
||||
;[x] 29/9/23
|
||||
INC A
|
||||
OUT (Z84.SIO.Ch_A.Ctrl),A
|
||||
DEC A
|
||||
;
|
||||
OUT (Z84.SIO.Ch_A.Ctrl),A
|
||||
|
||||
LD A,5
|
||||
OUT (Z84.SIO.Ch_A.Ctrl),A
|
||||
LD A,#62 ; bit 7 - Direction for Bufer (0), Bit 1 - Bufer Enable (1)
|
||||
OUT (Z84.SIO.Ch_A.Ctrl),A
|
||||
RET
|
||||
;//MODULE: VIDEO
|
||||
;[END]
|
||||
@ -1 +1 @@
|
||||
996
|
||||
997
|
||||
@ -1052,7 +1052,7 @@ MOUSE_COORDINATES:
|
||||
.Y: DB #00
|
||||
MOUSE_BUTTONS: DB #00
|
||||
|
||||
;MB_OLD DB #00 ; !FIXIT - ¥ 㦮?
|
||||
;MB_OLD DB #00
|
||||
MIN_X: DW 0
|
||||
MAX_X: DW 319
|
||||
MIN_Y: DW 0
|
||||
|
||||
@ -172,6 +172,7 @@ option_c:
|
||||
; Œ®¦® ¢ë©â¨ ¯® EXIT, ® ¥ ¨§ § ¯ã饮£® boot-§ £àã§ç¨ª®¬.
|
||||
;---------------------------------------------------------------
|
||||
FPRIMAR:
|
||||
halt
|
||||
ld c,Dss.CTRLKey ; ã§ âì á®áâ. ª« ¢ë ¢ ¤ ë© ¬®¬¥â
|
||||
RST ToDSS
|
||||
ld hl,autoexec_fname ; ¨¬ï ä ©« "system.bat"
|
||||
|
||||
@ -1 +1 @@
|
||||
435
|
||||
436
|
||||
Loading…
Reference in New Issue
Block a user