Commit graph

68 commits

Author SHA1 Message Date
Clownacy
84c3cd825e Merge branch 'accurate' into portable 2019-09-05 14:18:42 +01:00
Clownacy
42e1b36fd8 Restore the Windows-style path separators 2019-09-05 14:05:27 +01:00
Clownacy
4e50046d4b Remove WINDOWS and NONPORTABLE
Now that the portable stuff gets its own branch, these are unneeded
2019-09-04 02:14:15 +01:00
Clownacy
73e18b4610 Removed the WINDOWS and NONPORTABLE stuff
Now that all the ASM-accurate stuff is in its own branch, we don't
need these anymore.
2019-09-04 00:54:11 +01:00
Clownacy
5ea356a3bd Weed out a lot of the Windows dependency
Storytime: Cucky's original SDL2 port work involved using SDL2's
threading API to emulate the original WinAPI threading.

I can't be assed with that stuff, so I used the same trick Cucky did
for the Wii port, and hooked Organya up to the SDL2 audio callback.
This actually opens up the possibility for perfectly-synchronised
Organya playback. By that I mean, instead of needing a super
low-latency audio callback, I can have the callback synchronise its
audio mixing with Organya itself. I haven't done it yet, I plan to
soon.
2019-09-04 00:28:23 +01:00
Clownacy
451945e80c Ripped out SDL2, and begun made WinMain ASM-accurate
Almost there... see #74.
2019-09-01 14:39:16 +01:00
Clownacy
f956eb9264 Mostly ASM-accurate Draw.cpp
See #74
2019-08-31 17:43:45 +01:00
Clownacy
03e513365b PATH_LENGTH is actually Windows's MAX_PATH
When MAX_PATH isn't available, use FILENAME_MAX. This might be a bad
idea.
2019-08-31 01:44:53 +01:00
Clownacy
b814890d09 Convert TextScr.cpp to UTF-8
I should probably mention, the other reason I'm converting these to
UTF-8 is because SDL2 doesn't take Shift-JIS strings.
2019-08-25 21:23:01 +01:00
Clownacy
b7d01aae3f Overhauled the Music ID enum
This should be ASM-accurate, since SurfaceID was
2019-08-21 18:26:20 +00:00
Clownacy
64598dc2a5 Rename Surface_Ids to SurfaceID
For code style consistency (this isn't a vanilla enum name - I don't
think there even was an enum for this in the original source code)
2019-08-21 16:18:55 +00:00
Clownacy
d47f683491 Ported the Windows version's surface regeneration
Has the same imperfections: if you regenerate the surfaces while a
text box is open (and while using Courier New I guess), the text will
regenerate with smaller spaces.
2019-08-13 04:36:05 +00:00
Clownacy
d8d971c459 Added another bugfix 2019-08-01 00:34:35 +00:00
Clownacy
a3278a60b5 A fix, some documentation, and cleanup 2019-07-19 19:19:35 +01:00
Clownacy
941dec2c7c Add a bugfix for unsafe usage of sprintf
Thanks, Gabe
2019-06-27 17:50:19 +00:00
Clownacy
427fe69374 MessageBoxA usage cleanup 2019-06-20 21:17:32 +01:00
Clownacy
546631fad7 Made Profile.cpp ASM-accurate 2019-06-20 21:10:27 +01:00
Clownacy
078dc440c7 Made TextScr.cpp ASM-accurate
Yes! Finally!

Working towards #74
2019-06-20 20:33:47 +01:00
Clownacy
44f142d8e7 Big ugly rework of WindowsWrapper.h
Okay so WindowsWrapper.h now just includes Windows.h if it wants
non-portability. This meant I had to split the custom RECT struct
back to the original RECT and unknown nameless struct (one uses
left/right, while the other uses front/back).
2019-06-20 20:06:55 +01:00
Clownacy
765beff57a In-progress TextScriptProc fixes and accuracy improvements
Need to rework WindowsWrapper.h before I can progress.
2019-06-20 19:13:59 +01:00
Clownacy
d5dd2c9575 Made TextScr.cpp almost ASM-accurate
TextScriptProc is all that's left, but it's being a pain, so I'm
commiting this now, and dealing with the straggler later.
2019-05-13 23:51:11 +01:00
Clownacy
c9d5b3d03a Made Ending.cpp ASM-accurate 2019-05-13 20:43:43 +01:00
Clownacy
676ee004fe Removed the dependency on stdint.h
This doesn't exist in MSVC2003, and nothing in the Linux port's debug
symbols indicate Pixel used it.
2019-05-13 15:18:33 +01:00
Clownacy
f8d4ae7014 Made Stage.cpp ASM-accurate 2019-05-07 13:52:50 +01:00
Clownacy
25e68bfb9d Mark string pointers as const 2019-05-06 20:18:24 +01:00
Clownacy
0c018a9fd6 Deobfuscated null characters 2019-04-25 16:26:37 +01:00
Clownacy
b38aeaf064 Made TextScriptProc return 0 if it encounters an unknown command
This is what the original game does
2019-04-23 18:19:41 +01:00
Clownacy
468aa2efc1 Added error message boxes to the TSC parser 2019-04-23 09:50:15 +01:00
Clownacy
49014530e7 Clarify a bug 2019-04-10 11:55:23 +01:00
Clownacy
b92f1cbb1c Fix incorrectly-decompiled value in TextScr.cpp 2019-04-10 11:16:17 +01:00
Clownacy
c9b681299c Shut up some MSVC2003 warnings 2019-03-11 03:40:51 +00:00
Clownacy
3e4ef292c4 Add a missing (but unusable) call 2019-02-22 22:27:18 +00:00
Clownacy
293dbd4e03 1) I'm stupid 2) Use RGB for the PutText calls 2019-02-21 21:16:57 +00:00
Clownacy
3eca2d7cf3 Add all GetCortBoxColor calls back (also I found a vanilla bug) 2019-02-21 20:56:27 +00:00
Clownacy
0bb9760d87 Rearranged #includes 2019-02-18 21:30:22 +00:00
Clownacy
e5caff593c Removed the SDL dependency from Draw.h
Should make compiling with VC++ 2003 simpler
2019-02-18 20:40:07 +00:00
Clownacy
132d3c5110 Applied SURFACE_ID constants to everything 2019-02-18 14:36:58 +00:00
Clownacy
c44186d93a Ditched SDL's file IO for stdio and our own convenience functions
ASM-accurate file stuff can come later.
2019-02-15 20:33:08 +00:00
Clownacy
1bcbfa846f Made TextScr.cpp ASM-accurate
Or, at least as accurate as I can make it for now.
2019-02-12 04:38:26 +00:00
cuckydev
ded926b422 Saving Nikumaru Counter 2019-02-09 18:03:38 -05:00
cuckydev
4bbc2fa779 wide fix credit stuf 2019-02-09 13:23:51 -05:00
Cucky
1b09256c40
Merge pull request #44 from Clownacy/master
Plantation NPCs and the ZAM TSC command
2019-02-07 20:23:19 -05:00
cuckydev
28fed460ef credit 2019-02-07 20:20:27 -05:00
Clownacy
8650af1d9e Added ZAM TSC command 2019-02-08 00:30:43 +00:00
Clownacy
b6ed1dd9b1 Added NUM TSC command
Now missile upgrades work
2019-02-07 15:14:40 +00:00
Clownacy
aa08331c36 Added IronHead and relevant NPCs
Also added the AMJ TSC command, so getting the Spur works
2019-02-07 15:10:46 +00:00
Clownacy
c0120068d3 Added more NPCs, and the TAM TSC command 2019-02-06 20:02:53 +00:00
Clownacy
d78f46a384 Added some widescreen/tallscreen fixes 2019-02-06 13:18:54 +00:00
Clownacy
acc12ea5ed Added Monster X 2019-02-06 12:07:54 +00:00
Clownacy
ee88e805b3 Fix some errors and prevent some GCC warnings 2019-02-05 22:51:44 +00:00