подпиливание совместимости курсора с txt 40x32

This commit is contained in:
Tolik 2025-03-25 01:05:24 +10:00
parent ec748f630c
commit e17ef7d918
4 changed files with 37 additions and 17 deletions

View File

@ -139,16 +139,22 @@ SETMODE: PUSH DE
;+6 X ¯®«®¦. ¢ ¯®«¥ £à ä¨ª¨ (¢ §­ ª®¬¥áâ å)
;+7 Y ¯®«®¦. ¢ ¯®«¥ £à ä¨ª¨ (¢ §­ ª®¬¥áâ å)
ScreenDescriptorTable EQU $
; 80x32. ⥪á⮢®¥, §­ ª®¬¥áâ® 16x8, #0B - ­®¬¥à §­ ª®£¥­.
TAB_80x32 DB 40,32,0,0,%0001'1011,0,0,0 ;1
; 40x32. ⥪á⮢®¥, §­ ª®¬¥áâ® 8x8, #0B - ­®¬¥à §­ ª®£¥­.
TAB_40x32 DB 40,32,0,0,%0011'1011,0,0,0 ;2
; 640x256. £à ä¨ç¥áª®¥, 0-© íªà ­
TAB_640x256_0 DB 40,32,0,0,%0000'0000,0,0,0 ;3
; 320x256. £à ä¨ç¥áª®¥, 0-© íªà ­
TAB_320x256_0 DB 40,32,0,0,%0010'0000,0,0,0 ;4
; 640x256. £à ä¨ç¥áª®¥, 1-© íªà ­
TAB_640x256_1 DB 40,32,0,0,%0100'0000,0,40,0 ;5
; 320x256. £à ä¨ç¥áª®¥, 1-© íªà ­
TAB_320x256_1 DB 40,32,0,0,%0110'0000,0,40,0 ;6
ScreenDescriptorTable.Size EQU ($ - ScreenDescriptorTable)/6
@ -182,7 +188,7 @@ SAVETXT: PUSH AF
LD (BACKTXT.CURS),DE
POP AF
LD IX,#C000
LD HL,#2050
LD HL,#2050 ;!FIXIT ¥á«¨ ⥪á⮢®¥ 40x32?
OR A
JR NZ,.SVTEXT1
LD L,#28

View File

@ -210,7 +210,7 @@ ECHOKEY: CALL Cursor_On ;
AND A
RET
Cursor:
Cursor: ;!TODO «®£¨ç­¥¥ ªãàá®à®¬ ¬®à£ âì ¨ èà¨äâë ¬¥­ïâì ¨§ ¡¨®á  ¦¥?
.Flag+1: LD A,0 ; ä« £ ªãàá®à  00-­¥â/01-¥áâì
CPL
LD (.Flag),A
@ -221,17 +221,26 @@ Cursor_On: LD C,BIOS.LP_GET_PLACE ; 㧭
XOR A
LD C,BIOS.WIN_GET_SYM ; ¯®«ãç¨âì ᨬ¢®«
RST ToBIOS
;
LD A,%0010'0000
AND B
LD (.char_size),A ; [ ] 24/03/2025 á®å࠭塞 ⨯ ª¢ ¤à â¨ª  80/40 ᨬ¢®«®¢
;
LD BC,NORM_ZG*256+BIOS.WIN_PUT_SYM ; b=§­ ª®£¥­., á=ᨬ¢®« ­  íªà ­
LD A,(Cursor.Flag)
OR A
JR Z,.put_
JR Z,.put
LD B,INS_CUR_ZG ; ¡«®ª
LD A,(KEYFLAG) ; ä« £¨ ª« ¢ë
AND 1<<INS_L
JR Z,.put_
JR Z,.put
LD B,CURSOR_ZG ; ç¥àâ 
.put: XOR A ; ­®¬¥à ®ª­ 
.put_: RST ToBIOS
.put: ;
.char_size+1: LD A,0
OR B
LD B,A
XOR A ; ­®¬¥à ®ª­ 
RST ToBIOS
;
LD DE,(Cursor_Off.pos)
CALL LOCATE
@ -240,8 +249,9 @@ Cursor_On: LD C,BIOS.LP_GET_PLACE ; 㧭
LD (Cursor_Off.Flag),A
LD A,delay_curs
RET
;
; ‚몫îç¨âì ªãàá®à
;
Cursor_Off:
.Flag+1: LD A,0 ; ä« £ ªãàá®à : 00-¢ëª«/01-¢ª«
OR A
@ -258,14 +268,18 @@ Cursor_Off:
LD C,BIOS.WIN_GET_SYM ; ¯®«ãç¨âì ᨬ¢®«
XOR A
RST ToBIOS
;
LD A,%0010'0000
AND B
OR NORM_ZG
LD B,A ; [ ] 24/03/2025 á®å࠭塞 ⨯ ª¢ ¤à â¨ª  80/40 ᨬ¢®«®¢
;
XOR A
LD BC,NORM_ZG*256+BIOS.WIN_PUT_SYM ; ᨬ¢®« ­  íªà ­
LD C,BIOS.WIN_PUT_SYM ; ᨬ¢®« ­  íªà ­
RST ToBIOS
;
LD DE,(Cursor_Off.pos)
CALL LOCATE
RET
JP LOCATE
; ‚¥ªâ®à ®¡á«ã¦¨¢ ­¨ï ªãàá®à 
cursor_interrupt:

View File

@ -1 +1 @@
27
28

View File

@ -1 +1 @@
465
466