mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 17:31:47 +03:00
подпиливание совместимости курсора с txt 40x32
This commit is contained in:
parent
ec748f630c
commit
e17ef7d918
@ -139,16 +139,22 @@ SETMODE: PUSH DE
|
|||||||
;+6 X ¯®«®¦. ¢ ¯®«¥ £à 䨪¨ (¢ § ª®¬¥áâ å)
|
;+6 X ¯®«®¦. ¢ ¯®«¥ £à 䨪¨ (¢ § ª®¬¥áâ å)
|
||||||
;+7 Y ¯®«®¦. ¢ ¯®«¥ £à 䨪¨ (¢ § ª®¬¥áâ å)
|
;+7 Y ¯®«®¦. ¢ ¯®«¥ £à 䨪¨ (¢ § ª®¬¥áâ å)
|
||||||
ScreenDescriptorTable EQU $
|
ScreenDescriptorTable EQU $
|
||||||
|
|
||||||
; 80x32. ⥪á⮢®¥, § ª®¬¥áâ® 16x8, #0B - ®¬¥à § ª®£¥.
|
; 80x32. ⥪á⮢®¥, § ª®¬¥áâ® 16x8, #0B - ®¬¥à § ª®£¥.
|
||||||
TAB_80x32 DB 40,32,0,0,%0001'1011,0,0,0 ;1
|
TAB_80x32 DB 40,32,0,0,%0001'1011,0,0,0 ;1
|
||||||
|
|
||||||
; 40x32. ⥪á⮢®¥, § ª®¬¥áâ® 8x8, #0B - ®¬¥à § ª®£¥.
|
; 40x32. ⥪á⮢®¥, § ª®¬¥áâ® 8x8, #0B - ®¬¥à § ª®£¥.
|
||||||
TAB_40x32 DB 40,32,0,0,%0011'1011,0,0,0 ;2
|
TAB_40x32 DB 40,32,0,0,%0011'1011,0,0,0 ;2
|
||||||
|
|
||||||
; 640x256. £à ä¨ç¥áª®¥, 0-© íªà
|
; 640x256. £à ä¨ç¥áª®¥, 0-© íªà
|
||||||
TAB_640x256_0 DB 40,32,0,0,%0000'0000,0,0,0 ;3
|
TAB_640x256_0 DB 40,32,0,0,%0000'0000,0,0,0 ;3
|
||||||
|
|
||||||
; 320x256. £à ä¨ç¥áª®¥, 0-© íªà
|
; 320x256. £à ä¨ç¥áª®¥, 0-© íªà
|
||||||
TAB_320x256_0 DB 40,32,0,0,%0010'0000,0,0,0 ;4
|
TAB_320x256_0 DB 40,32,0,0,%0010'0000,0,0,0 ;4
|
||||||
|
|
||||||
; 640x256. £à ä¨ç¥áª®¥, 1-© íªà
|
; 640x256. £à ä¨ç¥áª®¥, 1-© íªà
|
||||||
TAB_640x256_1 DB 40,32,0,0,%0100'0000,0,40,0 ;5
|
TAB_640x256_1 DB 40,32,0,0,%0100'0000,0,40,0 ;5
|
||||||
|
|
||||||
; 320x256. £à ä¨ç¥áª®¥, 1-© íªà
|
; 320x256. £à ä¨ç¥áª®¥, 1-© íªà
|
||||||
TAB_320x256_1 DB 40,32,0,0,%0110'0000,0,40,0 ;6
|
TAB_320x256_1 DB 40,32,0,0,%0110'0000,0,40,0 ;6
|
||||||
ScreenDescriptorTable.Size EQU ($ - ScreenDescriptorTable)/6
|
ScreenDescriptorTable.Size EQU ($ - ScreenDescriptorTable)/6
|
||||||
@ -182,7 +188,7 @@ SAVETXT: PUSH AF
|
|||||||
LD (BACKTXT.CURS),DE
|
LD (BACKTXT.CURS),DE
|
||||||
POP AF
|
POP AF
|
||||||
LD IX,#C000
|
LD IX,#C000
|
||||||
LD HL,#2050
|
LD HL,#2050 ;!FIXIT ¥á«¨ ⥪á⮢®¥ 40x32?
|
||||||
OR A
|
OR A
|
||||||
JR NZ,.SVTEXT1
|
JR NZ,.SVTEXT1
|
||||||
LD L,#28
|
LD L,#28
|
||||||
|
|||||||
@ -210,7 +210,7 @@ ECHOKEY: CALL Cursor_On ;
|
|||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
Cursor:
|
Cursor: ;!TODO «®£¨ç¥¥ ªãàá®à®¬ ¬®à£ âì ¨ èà¨äâë ¬¥ïâì ¨§ ¡¨®á ¦¥?
|
||||||
.Flag+1: LD A,0 ; ä« £ ªãàá®à 00-¥â/01-¥áâì
|
.Flag+1: LD A,0 ; ä« £ ªãàá®à 00-¥â/01-¥áâì
|
||||||
CPL
|
CPL
|
||||||
LD (.Flag),A
|
LD (.Flag),A
|
||||||
@ -221,17 +221,26 @@ Cursor_On: LD C,BIOS.LP_GET_PLACE ; 㧭
|
|||||||
XOR A
|
XOR A
|
||||||
LD C,BIOS.WIN_GET_SYM ; ¯®«ãç¨âì ᨬ¢®«
|
LD C,BIOS.WIN_GET_SYM ; ¯®«ãç¨âì ᨬ¢®«
|
||||||
RST ToBIOS
|
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 BC,NORM_ZG*256+BIOS.WIN_PUT_SYM ; b=§ ª®£¥., á=ᨬ¢®« íªà
|
||||||
LD A,(Cursor.Flag)
|
LD A,(Cursor.Flag)
|
||||||
OR A
|
OR A
|
||||||
JR Z,.put_
|
JR Z,.put
|
||||||
LD B,INS_CUR_ZG ; ¡«®ª
|
LD B,INS_CUR_ZG ; ¡«®ª
|
||||||
LD A,(KEYFLAG) ; ä« £¨ ª« ¢ë
|
LD A,(KEYFLAG) ; ä« £¨ ª« ¢ë
|
||||||
AND 1<<INS_L
|
AND 1<<INS_L
|
||||||
JR Z,.put_
|
JR Z,.put
|
||||||
LD B,CURSOR_ZG ; ç¥àâ
|
LD B,CURSOR_ZG ; ç¥àâ
|
||||||
.put: XOR A ; ®¬¥à ®ª
|
.put: ;
|
||||||
.put_: RST ToBIOS
|
.char_size+1: LD A,0
|
||||||
|
OR B
|
||||||
|
LD B,A
|
||||||
|
XOR A ; ®¬¥à ®ª
|
||||||
|
RST ToBIOS
|
||||||
;
|
;
|
||||||
LD DE,(Cursor_Off.pos)
|
LD DE,(Cursor_Off.pos)
|
||||||
CALL LOCATE
|
CALL LOCATE
|
||||||
@ -240,8 +249,9 @@ Cursor_On: LD C,BIOS.LP_GET_PLACE ; 㧭
|
|||||||
LD (Cursor_Off.Flag),A
|
LD (Cursor_Off.Flag),A
|
||||||
LD A,delay_curs
|
LD A,delay_curs
|
||||||
RET
|
RET
|
||||||
|
;
|
||||||
; ‚몫îç¨âì ªãàá®à
|
; ‚몫îç¨âì ªãàá®à
|
||||||
|
;
|
||||||
Cursor_Off:
|
Cursor_Off:
|
||||||
.Flag+1: LD A,0 ; ä« £ ªãàá®à : 00-¢ëª«/01-¢ª«
|
.Flag+1: LD A,0 ; ä« £ ªãàá®à : 00-¢ëª«/01-¢ª«
|
||||||
OR A
|
OR A
|
||||||
@ -258,14 +268,18 @@ Cursor_Off:
|
|||||||
LD C,BIOS.WIN_GET_SYM ; ¯®«ãç¨âì ᨬ¢®«
|
LD C,BIOS.WIN_GET_SYM ; ¯®«ãç¨âì ᨬ¢®«
|
||||||
XOR A
|
XOR A
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
|
;
|
||||||
|
LD A,%0010'0000
|
||||||
|
AND B
|
||||||
|
OR NORM_ZG
|
||||||
|
LD B,A ; [ ] 24/03/2025 á®åà 塞 ⨯ ª¢ ¤à ⨪ 80/40 ᨬ¢®«®¢
|
||||||
|
;
|
||||||
XOR A
|
XOR A
|
||||||
LD BC,NORM_ZG*256+BIOS.WIN_PUT_SYM ; ᨬ¢®« íªà
|
LD C,BIOS.WIN_PUT_SYM ; ᨬ¢®« íªà
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
|
;
|
||||||
LD DE,(Cursor_Off.pos)
|
LD DE,(Cursor_Off.pos)
|
||||||
CALL LOCATE
|
JP LOCATE
|
||||||
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ‚¥ªâ®à ®¡á«ã¦¨¢ ¨ï ªãàá®à
|
; ‚¥ªâ®à ®¡á«ã¦¨¢ ¨ï ªãàá®à
|
||||||
cursor_interrupt:
|
cursor_interrupt:
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
27
|
28
|
||||||
@ -1 +1 @@
|
|||||||
465
|
466
|
||||||
Loading…
Reference in New Issue
Block a user