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
nmlgc
9d23be1a92
[Reduction] #91 : stpcpy
2014-08-20 17:03:08 +02:00
nmlgc
d3aaca7bd3
[Reduction] #90 : text_clear
2014-08-20 16:45:24 +02:00
nmlgc
eff96385b0
[Reduction] #82-89: PC-98 escape sequences
...
I don't know anything about ANSI/VT100/??? escape sequences, but after some
quick research, these sequences and their effect seem to be specific to the
PC-98 (although they're implemented as part of DOS, of course).
2014-08-20 16:27:28 +02:00
nmlgc
8f6c28c939
Restore master.lib's FUNC and ENDFUNC macros
...
With seg000 changed to word alignment and all definitions for "func" removed,
the master.lib functions can keep their exact alignment themselves.
[Binary change] db 0 → nop before get_machine_98() in the MAIN.EXE and
MAINE.EXE files of TH04 and TH05, respectively.
2014-08-20 15:25:40 +02:00
nmlgc
f39d9165da
[Reduction] #81 : ioctl
2014-08-20 14:02:31 +02:00
nmlgc
b90a1e2320
[Reduction] #80 : chmod
...
Yup, getting rid of all the definitions for "func", so that we can restore the
master.lib macro with the same name.
2014-08-20 14:02:29 +02:00
nmlgc
e9701c491d
[Reduction] #79 : atexit
...
Once again, random misreferences in one executable slow down the development.
And that function doesn't even seem to be called anywhere.
2014-08-20 14:02:27 +02:00
nmlgc
ce00b0b534
[Reduction] #70-78: C start up code
...
Finally!
[Binary change] Order of the first three relocations in every executable.
Two more relocations in the TH01 executables.
2014-08-20 14:02:26 +02:00
nmlgc
30d44e6822
[Reduction] #66-69: Near data segment space allocation
...
Neither should that one.
2014-08-19 19:54:53 +02:00
nmlgc
bb2c6c6efe
[Reduction] #53-65: Near heap functions
...
Come on, that shouldn't even count.
2014-08-19 19:52:11 +02:00