nmlgc
3de251fb60
Identify 4 functions accidentally missed in TH01's ZUNSOFT.COM
...
Wow. I just had to miss smem_release() once to find myself with a total of 4
missed functions (+ smem_wget(), bfnt_entry_pat() and
bfnt_extend_header_analysis()) a day later. Blasted tiny model.
2014-08-23 17:30:00 +02:00
nmlgc
656f993e8d
[Reduction] #158 : bfnt_palette_set
2014-08-23 16:56:01 +02:00
nmlgc
6e6293be79
[Reduction] #157 : palette_init
2014-08-23 16:18:30 +02:00
nmlgc
e76a9948b8
[Reduction] #156 : palette_show
2014-08-23 16:11:16 +02:00
nmlgc
61ccf52f3e
[Reduction] #155 : Palette data
2014-08-23 15:47:05 +02:00
nmlgc
138fcd2fce
[Reduction] #153-154: Key beep control
2014-08-23 14:01:53 +02:00
nmlgc
4759e85765
[Reduction] #152 : js_end
...
Popcorn.
2014-08-23 13:46:31 +02:00
nmlgc
6114c2871c
[Reduction] #151 : bfnt_extend_header_analysis
...
And here we have another TASM limitation: INCLUDE file names apparently are
strcpy()'d to a buffer with a fixed size of 32 bytes, causing a crash when
trying to include any file with a longer name. Quality.
2014-08-23 13:18:32 +02:00
nmlgc
20b998a428
[Reduction] #150 : bfnt_extend_header_skip
2014-08-23 12:23:03 +02:00
nmlgc
7046c47d28
[Reduction] #149 : bfnt_header_read
2014-08-23 12:08:48 +02:00
nmlgc
56a45d0b1d
[Reduction] #148 : bfnt_entry_pat
2014-08-23 11:51:14 +02:00
nmlgc
c718cc159a
[Reduction] #147 : 4-bit VRAM pixel rotation table
...
[Binary change] Order of three relocations in TH05's OP.EXE and MAINE.EXE.
2014-08-23 03:16:07 +02:00
nmlgc
76139a57c8
[Reduction] #146 : dos_axdx
2014-08-23 03:03:17 +02:00
nmlgc
cd1d7b341e
[Reduction] #145 : dos_keyclear
2014-08-23 03:02:18 +02:00
nmlgc
4d3b735008
[Reduction] #144 : dos_puts2
2014-08-23 01:48:16 +02:00
nmlgc
50bd48da18
[Reduction] #143 : dos_setvect
2014-08-23 01:38:22 +02:00
nmlgc
a756bab3cc
[Reduction] #142 : dos_read
2014-08-23 01:07:04 +02:00
nmlgc
4bcebcd875
[Reduction] #141 : dos_seek
2014-08-23 00:59:10 +02:00
nmlgc
ba3e077fc8
[Reduction] #140 : dos_close
2014-08-23 00:48:48 +02:00
nmlgc
2e2151b592
[Reduction] #139 : super_entry_pat
...
Heh, all the references to this function are still expressed in db opcode
form, because IDA couldn't process the self-modifying code in
bfnt_entry_pat(). That's almost practical in our case!
2014-08-23 00:28:05 +02:00
nmlgc
4e6ef3bd8d
[Reduction] #138 : super_entry_at
2014-08-22 23:56:33 +02:00
nmlgc
857c443b57
[Reduction] #137 : super_free
...
... yeah, TH02's MAINE.EXE indeed seems to not free its superimposed data.
In case it even allocates any.
[Binary change] db 0 → nop in ZUNSOFT.COM.
2014-08-22 23:45:21 +02:00
nmlgc
22112eab6a
[Reduction] #136 : super_cancel_pat
2014-08-22 23:33:18 +02:00
nmlgc
587f109e6a
[Reduction] #135 : Superimposed pattern data
...
... It really shows that I forgot to compress the "db 0" statements in
2bd664c5e4
.
2014-08-22 22:31:44 +02:00
nmlgc
8b32104540
[Reduction] #131-134: graph_pi_load_pack
...
Second biggest master.lib object right there... and apparently, TASM doesn't
support segment prefixes in EQU directives?
And yes, there really is no viable solution for both the NOPCALL problem (the
TASM manual states that these NOPs are inserted during single-pass assembly,
which we can't do) and the complementary jump sequences (which are only
inserted for forward references when specifying the JUMPS directive, which
doesn't seem to work for us either).
2014-08-22 21:15:44 +02:00
nmlgc
193ca02550
[Reduction] #130 : ___write
...
Doing one of these C monstrosities a day seems like a good habit. And hey,
ZUNSOFT.COM has already shrunk by over a third.
2014-08-22 19:28:05 +02:00
nmlgc
fbb78b9dd0
Replace the compatibility NOPs with a macro
2014-08-22 18:03:40 +02:00
nmlgc
4e9ad18af1
Move common directives and includes to a separate include file
...
Note that .386 needs to come before .MODEL, and is therefore not included in
ReC98.inc. Causes, um, weird label errors otherwise.
2014-08-22 18:01:06 +02:00
nmlgc
2d1dc1589c
[Reduction] #128-129: __rtl_write and __write
...
Underscores and wrappers, hooray.
__write is not included in the widely available version of WRITEA.CAS, but
it's still part of the same object file.
2014-08-22 02:55:11 +02:00
nmlgc
216413d8a6
[Reduction] #127 : lseek
...
Yup, gotta move all the "handle" definitions away first.
2014-08-22 01:55:05 +02:00
nmlgc
aaa2d23fc8
[Reduction] #126 : graph_pi_free
...
Huh, the compatibility NOPs extend to master.lib as well?
2014-08-22 01:39:42 +02:00
nmlgc
c3202f4450
[Reduction] #125 : hmem_lallocate
2014-08-22 01:19:52 +02:00
nmlgc
47781cd013
[Reduction] #124 : smem_wget
2014-08-22 01:04:46 +02:00
nmlgc
7cde3a50ec
[Reduction] #123 : smem_release
...
Need to do this function before smem_wget() to keep the alignment identical.
2014-08-22 00:59:18 +02:00
nmlgc
ea4db822ab
[Reduction] #120-122: Heap memory functions
...
With even more misreferences in switch tables.
2014-08-22 00:17:53 +02:00
nmlgc
969990a819
[Reduction] #119 : mem_assign_dos
...
Containing, again, fixes for misreferences in TH04.
2014-08-21 23:30:20 +02:00
nmlgc
fc0ccd5e2b
[Reduction] #117-118: mem_assign and mem_assign_all
2014-08-21 23:05:54 +02:00
nmlgc
d270a625e5
[Reduction] #116 : master.lib memory manager variables
2014-08-21 22:54:07 +02:00
nmlgc
99b9963082
[Reduction] #115 : dos_ropen
...
AKA "fontfile_open()", and originally kept in FONTOPEN.ASM... yeah.
2014-08-21 22:09:18 +02:00
nmlgc
98bf9d9576
Change the name of the entry point to STARTX
...
Because it just so happens that master.lib's bfnt_header structure contains
an element named "START".
And huh, this suddenly works without changing any assembler or linker
parameters? I swear it didn't when I tried it first.
2014-08-21 22:05:17 +02:00
nmlgc
87fae21127
[Reduction] #114 : fperror
...
OK, one more Borland C function I noticed while I was covering signals.
2014-08-21 21:33:04 +02:00
nmlgc
8e4683cd1e
[Reduction] #109-113: Signal handling
...
> "OK, the signal slice is pretty large, let's do it tomorrow"
> stay there for the majority of the day
Oh well, at least it paid off. I *really* should work towards PI loading now,
though.
2014-08-21 21:28:18 +02:00
nmlgc
d1ccecdfa9
[Reduction] #106-108: PC-98 EGC setup
...
"Enhanced Graphic Charger", hm...
2014-08-20 22:24:05 +02:00
nmlgc
a244c30cd9
[Reduction] #104-105: _dos_getdrive and _dos_setdrive
2014-08-20 21:38:31 +02:00
nmlgc
69672b819a
[Reduction] #103 : DOSENV
2014-08-20 21:22:56 +02:00
nmlgc
8ca6964330
[Reduction] #102 : ErrorMessage
2014-08-20 20:38:08 +02:00
nmlgc
e6e1e3a937
[Reduction] #101 : Far struct copy
2014-08-20 20:35:18 +02:00
nmlgc
68e1dc8596
[Reduction] #100 : fflush
2014-08-20 19:46:47 +02:00
nmlgc
33fa958a30
[Reduction] #98-99: getvect and setvect
...
Yeah, getvect.asm also includes setvect(). They really could have chosen a
better naming scheme.
2014-08-20 18:09:26 +02:00
nmlgc
ea547e4841
[Reduction] #92-97: exit
2014-08-20 17:53:02 +02:00