From be3ba9989c50bd199c08ed9a314245fc846894b6 Mon Sep 17 00:00:00 2001 From: Robert Pengelly <robertapengelly@hotmail.com> Date: Fri, 27 Sep 2024 22:20:00 +0100 Subject: [PATCH] Search .bat as well as .com --- build/chimaera.img | Bin 368640 -> 368640 bytes build/chimaera.vhd | Bin 34120704 -> 34120704 bytes src/apps/pcomm/pcomm.asm | 84 ++++++++++++++++++++++++++++++++------- 3 files changed, 69 insertions(+), 15 deletions(-) diff --git a/build/chimaera.img b/build/chimaera.img index 0e30930df07fd27292e33a6e4866c42e16f95c07..9a4a3d22bf331905e1a546ab24a0b505adf9d498 100644 GIT binary patch delta 4540 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 delta 4469 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 CJ1hkN diff --git a/build/chimaera.vhd b/build/chimaera.vhd index e629017fef72e194369dd7d4c5682a699c76171d..fffe6cbd7c520ca227f411ae6a416957f86f3b73 100644 GIT binary patch delta 6472 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 Z{DOHgTIsz3)9)CW7MQUZ@9bOD{{a+B;OqbZ delta 6402 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 diff --git a/src/apps/pcomm/pcomm.asm b/src/apps/pcomm/pcomm.asm index ff12bf4..395aec2 100644 --- a/src/apps/pcomm/pcomm.asm +++ b/src/apps/pcomm/pcomm.asm @@ -2238,20 +2238,26 @@ _process_line: mov word ptr cs:[_need_ext], 1 add bx, ax + mov si, offset _ext_table + mov cx, offset _ext_count + +.L106: + + mov dx, di + push di + push cx - mov al, '.' - stosb + mov ax, cs:[si + 2] + mov cx, cs:[si] - mov al, 'c' - stosb - - mov al, 'o' - stosb + add si, offset _ext_size + push si - mov al, 'm' - stosb + mov si, ax + rep movsb + push dx jmp .L25 .L24: @@ -2274,7 +2280,7 @@ _process_line: mov word ptr cs:[_in_batch], 0 - mov ax, offset _ext_batch + mov ax, offset _ext_bat push ax call _strcmp @@ -2295,6 +2301,14 @@ _process_line: jc .L107 add sp, 4 + + cmp word ptr cs:[_need_ext], 1 + jne .L101 + + pop si + pop cx + pop di + jmp .L101 .L104: @@ -2313,9 +2327,16 @@ _process_line: mov ax, HEX (4B00) int HEX (21) pop bx - jnc .L101 + jc .L103 + + cmp word ptr cs:[_need_ext], 1 + jne .L101 - jmp .L103 + pop si + pop cx + pop di + + jmp .L101 .L107: @@ -2395,6 +2416,13 @@ _process_line: pop bx pop ax + cmp word ptr cs:[_need_ext], 1 + jne .L101 + + pop si + pop cx + pop di + jmp .L101 .L97: @@ -2407,6 +2435,18 @@ _process_line: .L98: + cmp word ptr cs:[_need_ext], 1 + jne .L108 + + pop si + pop cx + pop di + + dec cx + jnz .L106 + +.L108: + mov bx, offset _err_invalid call _writestr @@ -2748,9 +2788,8 @@ _autoexec: db "AUTOEXEC.BAT", HEX (00) _batch_flags: db "r", HEX (00) _in_batch: dw HEX (0000) -_ext_batch: db ".bat", HEX (00) - _ll_scratch: dw HEX (0000) + _fn_wild: db "*.*", HEX (00) _dta_addr: dw HEX (0000) @@ -2787,10 +2826,25 @@ global _curr_drive _curr_drive: db HEX (00) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Commands. +;; Commands and extensions. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %include "cmdhash.gen" +_ext_com: db ".com", HEX (00) +_ext_bat: db ".bat", HEX (00) + _cmd_size: equ 6 +_ext_size: equ 4 + +align 4 +_ext_table: + + dw HEX (0004) + dw offset _ext_com + + dw HEX (0004) + dw offset _ext_bat + +_ext_count: equ ($ - _ext_table) / _ext_size align 4 _cmd_table: -- 2.34.1