fixet bug with small partitions. Some small fixes

This commit is contained in:
Tolik 2024-07-05 03:39:58 +10:00
parent 201fa03a29
commit 6af1575f2b
9 changed files with 88 additions and 101 deletions

View File

@ -66,6 +66,7 @@
include 'API/Environ.ASM' include 'API/Environ.ASM'
include 'API/Lib_Sub.asm' include 'API/Lib_Sub.asm'
include "API/EXECUTE.ASM" include "API/EXECUTE.ASM"
include "API/Print.asm"

74
DSS/API/Print.asm Normal file
View 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
;///////////////////////////////////////////////////////////////////////

View File

@ -790,7 +790,7 @@ RD_BPB: ; LD C,SLOT3
RLA RLA
; ;
LD C,A LD C,A
LD B,0 ; BC - File handels in sectors LD B,0 ; BC - File handels per sector
;;;; ;;;;
IF COMPILE_UNUSED_CODE IF COMPILE_UNUSED_CODE
LD (CORE_BUFFERS.FatBuffer.FilesPerSector),A 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 HL,(CORE_BUFFERS.SECTOR_BUFFER + BOOT_SECTOR.SectorsPerDrive)
LD A,H LD A,H
OR L OR L
LD DE,(CORE_BUFFERS.FatBuffer.FirstDataSector_L)
JP NZ,.HDDSMAL JP NZ,.HDDSMAL
; ;
LD DE,(CORE_BUFFERS.FatBuffer.FirstDataSector_L)
EXX EXX
LD HL,(CORE_BUFFERS.SECTOR_BUFFER + BOOT_SECTOR.BPB_BIG_TOTAL_SECTORS_H) LD HL,(CORE_BUFFERS.SECTOR_BUFFER + BOOT_SECTOR.BPB_BIG_TOTAL_SECTORS_H)
PUSH HL ; Total Sectors high PUSH HL ; Total Sectors high

View File

@ -107,14 +107,7 @@ RMKTIME:
; E - ¬¥áïæ ; E - ¬¥áïæ
; IX - £®¤ ; IX - £®¤
; ¢ë室: H - ¤¥­ì ­¥¤¥«¨ (1 - ¢®áªà¥á¥­ì¥) ; ¢ë室: H - ¤¥­ì ­¥¤¥«¨ (1 - ¢®áªà¥á¥­ì¥)
CalcDayOfWeek: ;!FIXIT ¢ëç¨á«ïâì ¤¥­ì ­¥¤¥«¨ CalcDayOfWeek: LD A,D
; 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
LD (.day),A LD (.day),A
; x = (14 ? ¬¥áïæ) / 12 ; x = (14 ? ¬¥áïæ) / 12
; y = £®¤ ? x ; y = £®¤ ? x
@ -203,6 +196,11 @@ CalcDayOfWeek: ;!FIXIT
LD H,L LD H,L
INC H INC H
RET RET
; x = (14 ? ¬¥áïæ) / 12
; y = £®¤ ? x
; m = ¬¥áïæ + 12 * x ? 2
; „¥­ì<C2AD>¥¤¥«¨ = (7000 + (¤¥­ì + y + y/4 ? y/100 + y/400 + (31 * m)/12)) mod 7
; ‚ᥠ¤¥«¥­¨ï 楫®ç¨á«¥­­ë¥ (®áâ â®ª ®â¡à á뢠¥âáï).
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;

View File

@ -690,94 +690,7 @@ BACKTXT: PUSH AF
POP BC POP BC
NOBACKT: POP AF NOBACKT: POP AF
RET 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 ;//MODULE: VIDEO
;[END] ;[END]

View File

@ -1 +1 @@
996 997

View File

@ -1052,7 +1052,7 @@ MOUSE_COORDINATES:
.Y: DB #00 .Y: DB #00
MOUSE_BUTTONS: DB #00 MOUSE_BUTTONS: DB #00
;MB_OLD DB #00 ; !FIXIT - ­¥ ­ã¦­®? ;MB_OLD DB #00
MIN_X: DW 0 MIN_X: DW 0
MAX_X: DW 319 MAX_X: DW 319
MIN_Y: DW 0 MIN_Y: DW 0

View File

@ -172,6 +172,7 @@ option_c:
; Œ®¦­® ¢ë©â¨ ¯® EXIT, ­® ­¥ ¨§ § ¯ã饭­®£® boot-§ £àã§ç¨ª®¬. ; Œ®¦­® ¢ë©â¨ ¯® EXIT, ­® ­¥ ¨§ § ¯ã饭­®£® boot-§ £àã§ç¨ª®¬.
;--------------------------------------------------------------- ;---------------------------------------------------------------
FPRIMAR: FPRIMAR:
halt
ld c,Dss.CTRLKey ; ã§­ âì á®áâ. ª« ¢ë ¢ ¤ ­­ë© ¬®¬¥­â ld c,Dss.CTRLKey ; ã§­ âì á®áâ. ª« ¢ë ¢ ¤ ­­ë© ¬®¬¥­â
RST ToDSS RST ToDSS
ld hl,autoexec_fname ; ¨¬ï ä ©«  "system.bat" ld hl,autoexec_fname ; ¨¬ï ä ©«  "system.bat"

View File

@ -1 +1 @@
435 436