mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 09:21:47 +03:00
подпиливание совместимости курсора с txt 40x32
This commit is contained in:
parent
ec748f630c
commit
e17ef7d918
@ -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
|
||||
|
||||
@ -186,7 +186,7 @@ ECHOKEY: ;R01
|
||||
|
||||
|
||||
;------; !FIXIT ¡à âì § ç¥¨ï ¤«ï § ª®£¥¥à â®à ¨§ ¡¨®á ?
|
||||
delay_curs: EQU 11 ; ç áâ®â ¬¨£ ¨ï ªãàá®à
|
||||
delay_curs: EQU 11 ; ç áâ®â ¬¨£ ¨ï ªãàá®à
|
||||
INS_CUR_ZG: EQU #9B ; [x] 14/03/2025 ¡ë« ¡ £ ¤«ï £à ä¨ç¥áª¨å íªà ®¢ ०¨¬ ᯥªâàã¬
|
||||
CURSOR_ZG: EQU #5B ; [x] 14/03/2025 ¡ë« ¡ £ ¤«ï £à ä¨ç¥áª¨å íªà ®¢ ०¨¬ ᯥªâàã¬
|
||||
NORM_ZG: EQU #1B
|
||||
@ -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 ; ᨬ¢®« íªà
|
||||
RST ToBIOS
|
||||
|
||||
LD C,BIOS.WIN_PUT_SYM ; ᨬ¢®« íªà
|
||||
RST ToBIOS
|
||||
;
|
||||
LD DE,(Cursor_Off.pos)
|
||||
CALL LOCATE
|
||||
|
||||
RET
|
||||
JP LOCATE
|
||||
|
||||
; ‚¥ªâ®à ®¡á«ã¦¨¢ ¨ï ªãàá®à
|
||||
cursor_interrupt:
|
||||
|
||||
@ -1 +1 @@
|
||||
27
|
||||
28
|
||||
@ -1 +1 @@
|
||||
465
|
||||
466
|
||||
Loading…
Reference in New Issue
Block a user