From 9ff29d315998651fe2d2a48f03c307dbb9ff1556 Mon Sep 17 00:00:00 2001 From: nmlgc Date: Sun, 7 Sep 2014 22:05:49 +0200 Subject: [PATCH] [Reduction] #495: localeconv --- libs/BorlandC/cconv.asm | 10 +++++++ libs/BorlandC/cconv[data].asm | 32 ++++++++++++++++++++++ th01_fuuin.asm | 49 +++------------------------------ th01_op.asm | 49 +++------------------------------ th01_reiiden.asm | 51 +++-------------------------------- 5 files changed, 52 insertions(+), 139 deletions(-) create mode 100644 libs/BorlandC/cconv.asm create mode 100644 libs/BorlandC/cconv[data].asm diff --git a/libs/BorlandC/cconv.asm b/libs/BorlandC/cconv.asm new file mode 100644 index 00000000..e3c6b72f --- /dev/null +++ b/libs/BorlandC/cconv.asm @@ -0,0 +1,10 @@ + public _localeconv +_localeconv proc far + push si + push di + mov dx, ds + mov ax, offset __localeconvention + pop di + pop si + ret +_localeconv endp diff --git a/libs/BorlandC/cconv[data].asm b/libs/BorlandC/cconv[data].asm new file mode 100644 index 00000000..a738aeca --- /dev/null +++ b/libs/BorlandC/cconv[data].asm @@ -0,0 +1,32 @@ +CHAR_MAX equ 127 + + public __localeconvention +__localeconvention dd cconv_10050 + dd cconv_10052 + dd cconv_10053 + dd cconv_10054 + dd cconv_10055 + dd cconv_10056 + dd cconv_10057 + dd cconv_10058 + dd cconv_10059 + dd cconv_1005A + db CHAR_MAX + db CHAR_MAX + db CHAR_MAX + db CHAR_MAX + db CHAR_MAX + db CHAR_MAX + db CHAR_MAX + db CHAR_MAX +cconv_10050 db 2Eh + db 0 +cconv_10052 db 0 +cconv_10053 db 0 +cconv_10054 db 0 +cconv_10055 db 0 +cconv_10056 db 0 +cconv_10057 db 0 +cconv_10058 db 0 +cconv_10059 db 0 +cconv_1005A db 0 diff --git a/th01_fuuin.asm b/th01_fuuin.asm index 54d04272..27b83a89 100644 --- a/th01_fuuin.asm +++ b/th01_fuuin.asm @@ -2301,7 +2301,7 @@ arg_E = word ptr 12h sub sp, 32h push si push di - les bx, off_13A8C + les bx, __localeconvention mov al, es:[bx] mov [bp+var_5], al push es @@ -3625,22 +3625,7 @@ segp = dword ptr 6 _segread endp include libs/BorlandC/setupio.asm - -; =============== S U B R O U T I N E ======================================= - -; Attributes: library function - -; struct lconv *localeconv(void) -_localeconv proc far - push si - push di - mov dx, ds - mov ax, 0FECh - pop di - pop si - retf -_localeconv endp - +include libs/BorlandC/cconv.asm include libs/BorlandC/toupper.asm include libs/BorlandC/unlink.asm @@ -26411,35 +26396,7 @@ include libs/BorlandC/new[data].asm __stklen dw 1000h include libs/master.lib/ctype[data].asm db 0 -off_13A8C dd unk_13ABC - dd unk_13ABE - dd unk_13ABF - dd unk_13AC0 - dd unk_13AC1 - dd unk_13AC2 - dd unk_13AC3 - dd unk_13AC4 - dd unk_13AC5 - dd unk_13AC6 - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  -unk_13ABC db 2Eh ; . - db 0 -unk_13ABE db 0 -unk_13ABF db 0 -unk_13AC0 db 0 -unk_13AC1 db 0 -unk_13AC2 db 0 -unk_13AC3 db 0 -unk_13AC4 db 0 -unk_13AC5 db 0 -unk_13AC6 db 0 +include libs/BorlandC/cconv[data].asm db 0 db 28h ; ( db 6Eh ; n diff --git a/th01_op.asm b/th01_op.asm index 61b93154..c3790d09 100644 --- a/th01_op.asm +++ b/th01_op.asm @@ -2079,7 +2079,7 @@ arg_E = word ptr 12h sub sp, 32h push si push di - les bx, off_12FCC + les bx, __localeconvention assume es:nothing mov al, es:[bx] mov [bp+var_5], al @@ -3344,22 +3344,7 @@ segp = dword ptr 6 _segread endp include libs/BorlandC/setupio.asm - -; =============== S U B R O U T I N E ======================================= - -; Attributes: library function - -; struct lconv *localeconv(void) -_localeconv proc far - push si - push di - mov dx, ds - mov ax, 0D3Ch - pop di - pop si - retf -_localeconv endp - +include libs/BorlandC/cconv.asm include libs/BorlandC/toupper.asm include libs/BorlandC/unlink.asm @@ -23693,35 +23678,7 @@ include libs/BorlandC/new[data].asm __stklen dw 1000h include libs/master.lib/ctype[data].asm db 0 -off_12FCC dd unk_12FFC - dd unk_12FFE - dd unk_12FFF - dd unk_13000 - dd unk_13001 - dd unk_13002 - dd unk_13003 - dd unk_13004 - dd unk_13005 - dd unk_13006 - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  -unk_12FFC db 2Eh ; . - db 0 -unk_12FFE db 0 -unk_12FFF db 0 -unk_13000 db 0 -unk_13001 db 0 -unk_13002 db 0 -unk_13003 db 0 -unk_13004 db 0 -unk_13005 db 0 -unk_13006 db 0 +include libs/BorlandC/cconv[data].asm db 0 db 28h ; ( db 6Eh ; n diff --git a/th01_reiiden.asm b/th01_reiiden.asm index 746c21e3..9c94a80b 100644 --- a/th01_reiiden.asm +++ b/th01_reiiden.asm @@ -2771,7 +2771,7 @@ arg_E = word ptr 12h sub sp, 32h push si push di - les bx, off_367B8 + les bx, __localeconvention mov al, es:[bx] mov [bp+var_5], al push es @@ -3084,7 +3084,7 @@ arg_E = dword ptr 12h ; Hack (wait) db 0cdh db 03dh - les bx, off_367B8 + les bx, __localeconvention mov al, es:[bx] mov [bp+var_19], al mov si, 8000h @@ -6125,22 +6125,7 @@ segp = dword ptr 6 _segread endp include libs/BorlandC/setupio.asm - -; =============== S U B R O U T I N E ======================================= - -; Attributes: library function - -; struct lconv *localeconv(void) -_localeconv proc far - push si - push di - mov dx, ds - mov ax, 1E18h - pop di - pop si - retf -_localeconv endp - +include libs/BorlandC/cconv.asm include libs/BorlandC/toupper.asm include libs/BorlandC/unlink.asm @@ -44184,35 +44169,7 @@ include libs/BorlandC/new[data].asm __stklen dw 1000h include libs/master.lib/ctype[data].asm db 0 -off_367B8 dd unk_367E8 - dd unk_367EA - dd unk_367EB - dd unk_367EC - dd unk_367ED - dd unk_367EE - dd unk_367EF - dd unk_367F0 - dd unk_367F1 - dd unk_367F2 - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  - db 7Fh ;  -unk_367E8 db 2Eh ; . - db 0 -unk_367EA db 0 -unk_367EB db 0 -unk_367EC db 0 -unk_367ED db 0 -unk_367EE db 0 -unk_367EF db 0 -unk_367F0 db 0 -unk_367F1 db 0 -unk_367F2 db 0 +include libs/BorlandC/cconv[data].asm db 0 aNull db '(null)',0 db 0