Commit Graph

309 Commits

Author SHA1 Message Date
nmlgc fe2a73c888 [Reduction] #468-469: ihypot and isqrt 2014-09-05 20:17:22 +02:00
nmlgc 84b7d0f1ab [Reduction] #467: Far long multiplication
Yeah, the code is identical to the near version, with the only difference
being the PROC directive declaring the function as either near or far. Now, I
could either turn the function body into some kind of macro stored in a
separate file and then instantiate it from both near and far functions... or I
could just copy the original structure. Who cares, anyway.
2014-09-05 10:57:12 +02:00
nmlgc ccc560ab37 [Reduction] #466: searchenv 2014-09-04 20:55:28 +02:00
nmlgc dc9fc37b3f [Reduction] #465: searchstr 2014-09-04 20:55:27 +02:00
nmlgc 97711aac8f [Reduction] #464: mbcjmstojis
"Multi-byte-character-<something>-shift-to-JIS"?
2014-09-04 19:24:14 +02:00
nmlgc c0aa5b8a67 [Reduction] #461-463: fullpath.c 2014-09-04 19:04:39 +02:00
nmlgc af7f0b0ad6 [Reduction] #458-460: Double-byte character set functions 2014-09-03 23:23:25 +02:00
nmlgc bab649b884 [Reduction] #457: getch 2014-09-03 19:30:32 +02:00
nmlgc e54a6ad120 [Reduction] #456: DOSCMD
... I, um, cannot comprehend how the C source code I have for this function
could have been compiled into such an assembly.
2014-09-03 19:13:47 +02:00
nmlgc 92046a8021 [Reduction] #455: getenv 2014-09-03 17:08:02 +02:00
nmlgc bf7fb83197 [Reduction] #454: respal_set_palettes 2014-09-03 16:08:44 +02:00
nmlgc b60d3a0f56 [Reduction] #453: respal_get_palettes 2014-09-03 16:07:27 +02:00
nmlgc 3f7a29acc6 [Reduction] #452: respal_free 2014-09-03 15:45:21 +02:00
nmlgc 61c95ec603 [Reduction] #450-451: respal_exist and respal_create 2014-09-03 15:23:51 +02:00
nmlgc 01a126da71 [Reduction] #449: setvbuf 2014-09-03 14:02:14 +02:00
nmlgc 00e419e9da [Reduction] #448: setblock 2014-09-02 23:38:26 +02:00
nmlgc b77f2cfba0 [Reduction] #447: access 2014-09-02 23:26:19 +02:00
nmlgc 23aa61c002 [Reduction] #446: abort
The one with the single underscore, which is just raise + a wrapper around the
one with two underscores.
2014-09-02 21:45:19 +02:00
nmlgc 9d5aa934d4 [Reduction] #445: flushall 2014-09-02 21:44:35 +02:00
nmlgc 429f134a51 [Reduction] #442-444: fseek and ftell 2014-09-02 21:04:29 +02:00
nmlgc b82a03c3f8 [Reduction] #441: grcg_round_boxfill
No local symbol definitions for variables here, as they are used in both the
normal function and the retfunc.
2014-09-01 21:08:57 +02:00
nmlgc 6250206235 [Reduction] #432-440: xxv.cpp
OK, *that's* the last piece of C++ crud shared across all main executables.
According to the object in the library file though, it seems to include one
more dword named
	__DestructorCountPtr
in the BSS segment. Neither games nor the runtime itself seem to use it, and
as a consequence, it doesn't even seem to be included in the games' BSS
segments, given that they all end with the symbols of xx.cpp...
2014-09-01 13:51:23 +02:00
nmlgc f994832a28 [Reduction] #431: toupper
Neither is this one. Also, interesting how IDA didn't identify the function in
one third of the cases.

[Binary change] Order of 2 relocations in TH03's MAINL.EXE, TH04's MAIN.EXE
and MAINE.EXE, and TH05's MAINE.EXE.
2014-09-01 12:01:35 +02:00
nmlgc 49d85b2c0b [Reduction] #430: tolower
... huh? That is certainly not multi-byte safe.
2014-09-01 12:01:34 +02:00
nmlgc 4e16a92b07 [Reduction] #429: ctype 2014-09-01 12:01:32 +02:00
nmlgc b4dd0d452d [Reduction] #428: text_puts 2014-09-01 08:58:15 +02:00
nmlgc ce245eae9f [Reduction] #427: grcg_trapezoid 2014-09-01 08:45:00 +02:00
nmlgc c90b76bff9 [Reduction] #426: graph_200line
Yup. TH03's graphics layer is actually set to a resolution of 640x200 and
upscaled by the hardware, which gives the game its distinctive low-res look.
2014-09-01 08:41:20 +02:00
nmlgc 1276b727ff [Reduction] #425: grcg_settile_1line 2014-09-01 07:39:11 +02:00
nmlgc a27c177235 [Reduction] #424: grcg_triangle 2014-09-01 07:30:58 +02:00
nmlgc 5b91dd3b42 [Reduction] #423: grcg_polygon_c 2014-09-01 06:52:28 +02:00
nmlgc b2c9ba67bc [Reduction] #422: draw_trapezoid
Yup. From TH03 on, ZUN uses a different version of master.lib, containing more
features than the last official version 0.23 from May 1995. Given the relative
insignificance of the features in question, I presume that Amusement Makers
must have kept their own, improved fork of master.lib, rather than ZUN having
hacked master.lib on his own.

Anyway, that doesn't matter. In the end, we still have to reverse-engineer each
and every one of these changes, and some of the more complicated functions
won't even be reduced before the actual reverse-engineering step of this
project.

[Binary change] Order of 3 relocations in TH05's OP.EXE.
2014-08-31 18:08:50 +02:00
nmlgc 7dc06e0047 [Reduction] #421: super_zoom 2014-08-31 15:27:30 +02:00
nmlgc 5009e416a0 [Reduction] #420: grcg_fill 2014-08-31 12:22:19 +02:00
nmlgc 14b9f10d14 [Reduction] #419: super_convert_tiny 2014-08-31 11:42:22 +02:00
nmlgc 2db5e73934 [Reduction] #418: grcg_line 2014-08-31 11:30:26 +02:00
nmlgc 3549c5496e [Reduction] #417: ems_read 2014-08-31 11:15:56 +02:00
nmlgc 44a2c223f6 [Reduction] #416: ems_space 2014-08-31 11:05:56 +02:00
nmlgc 5261b79d12 [Reduction] #415: ems_write 2014-08-31 11:02:40 +02:00
nmlgc 2c16f56bb1 [Reduction] #414: ems_setname 2014-08-31 10:58:51 +02:00
nmlgc 3660316127 [Reduction] #413: ems_movememoryregion 2014-08-31 10:56:55 +02:00
nmlgc 958f32c884 [Reduction] #412: ems_free 2014-08-31 10:49:03 +02:00
nmlgc d4f0bb7c27 [Reduction] #411: ems_exist 2014-08-31 10:43:56 +02:00
nmlgc 267749bd40 [Reduction] #410: ems_enablepageframe 2014-08-31 10:37:04 +02:00
nmlgc 4b848cc7e8 [Reduction] #409: ems_allocate 2014-08-31 10:32:28 +02:00
nmlgc e9e6d14ab6 [Reduction] #408: gaiji_backup and gaiji_restore 2014-08-31 10:23:41 +02:00
nmlgc bd2ef210c0 [Reduction] #407: gaiji_entry_bfnt 2014-08-31 10:09:59 +02:00
nmlgc 73aad4c7e6 [Reduction] #404-406: gaiji_write and gaiji_write_all 2014-08-31 09:50:38 +02:00
nmlgc 8c68537820 [Reduction] #401-403: gaiji_read and gaiji_read_all 2014-08-31 09:42:55 +02:00
nmlgc c793095729 [Reduction] #400: grc_clip_polygon_n 2014-08-31 08:55:51 +02:00