widget bug fixing

This commit is contained in:
Frater 2026-02-22 23:52:33 +01:00
commit 36e72bb399
9 changed files with 374 additions and 628 deletions

View file

@ -24,9 +24,9 @@
; https://wiki.nox-rhea.org/back2root/ibm-pc-ms-dos/hardware/informations/bios_data_area
;
%define BDA_SEGMENT 0x0040 ; segment BDA (historically)
%define SEG_BDA 0x0040 ; segment BDA (historically)
%define SEG_BDA_CUSTOM 0x0050 ; custom data (mouse, gfx cursor, etc..)
%define BDA_GUI_WIDGET 0x0070 ; Segment de données UI (Safe: après Stack, avant Heap)
%define SEG_GUI 0x0070 ; Segment de données UI (Safe: après Stack, avant Heap)
%define PTR_MOUSE 0x0000
%define PTR_GFX (PTR_MOUSE + mouse_size)

View file

@ -39,20 +39,20 @@ strcpy:
%undef .src_seg
%undef .src_ofs
; -----------------------------------------------------------------------------
; strlen
; Calcule la longueur d'une chaine [es:di]
; Out: CX = Length
; Out: AX = Length
; -----------------------------------------------------------------------------
%define .str_seg word [bp+4]
%define .str_ofs word [bp+6]
strlen:
push bp
mov bp, sp
push ax
push ax
push es
push di
xor cx, cx
mov ax, .str_seg
mov es, ax
@ -68,7 +68,7 @@ strlen:
.done:
pop di
pop es
pop ax
pop ax
leave
ret
%undef .str_seg