Sign in

ReC98

@rec98.nmlgc.net
123 followers 7 following 277 posts

rec98.nmlgc.net

PostsRepliesMedia
ReC98 @rec98.nmlgc.net · 21/08/2026
Finished the retirement part of the next blog post. >7,700 words with the full timeline, nuance, and plenty of burned bridges that hopefully close off any way back into this hellhole I should have left in 2011. The vibecoders will soon appear like the sanest actors in the room.
130
ReC98 @rec98.nmlgc.net · 15/07/2026
OK, received tons of words, but zero serious offers to continue working in this scene in any capacity, matching the trend started in April. Hence, this business model has run its course, I made the right call, and the decision is final. First round of refunds has been sent out.
231
ReC98 @rec98.nmlgc.net · 10/07/2026
Yup. Even if funding improved again, vibecoders *will* set the standard for QoL features. So this can only go two ways: • Ignore them → community splits along a silly pro- vs. anti-AI divide • Work with them → ReC98 degenerates into playing catch-up Both are undesirable. bsky.app/profile/gens...
120
ReC98 @rec98.nmlgc.net · 09/07/2026
ReC98 will end after the next delivery. I don't have it in me to compete with vibecoders, especially when y'all cheer them on for instantly delivering what you've wanted all along. And if you aren't cheering yet, you soon will; they're only getting better and more numerous.
51411
ReC98 @rec98.nmlgc.net · 30/06/2026
Many thanks to this month's subscribers! RL consumed lots of time this month. Regaining focus has been tough with the final steps being as difficult as ever. Wondering how ReC98 can possibly survive after all the forks (many of them vibe-coded) I've seen in this month alone.
Active ReC98 subscriptions for June 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €50 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL to Windows 98 to get Shuusou Gyoku running there again
030
ReC98 @rec98.nmlgc.net · 16/06/2026
140-175 ms for simulating the full 7 minutes of Shuusou Gyoku's Extra Stage on the command line. On an 8-year-old Core i5. Single-threaded. With MSVC's horrid codegen and several untapped optimization opportunities. And that's the heaviest case. Regular stages are much faster.
Output of the upcoming Shuusou Gyoku command-line replay simulation tool, showing the end result of two Extra Stage and one Lunatic Stage 4 replay, together with the surprisingly short amount of time it took to gather these results – 141.3 ms for a Wide Shot Extra Stage run, 173.3 ms for a Homing Missile Extra Stage run, and 44.8 ms for a Laser run of Stage 4 on Lunatic difficulty, translating to validation frame rates of 191894, 151244 and 242082 FPS, respectively.
230
ReC98 @rec98.nmlgc.net · 14/06/2026
Finally, Shuusou Gyoku's game logic, isolated in a reusable, freestanding DLL. No global state. No Win32 API dependencies besides GetProcessHeap(), HeapAlloc(), and HeapFree(). No instructions newer than i586. Still simulates blazingly fast. (Have fun guessing how fast exactly!)
Screenshot of the Windows 11 Properties dialog displaying the new Shuusou Gyoku game logic DLL, with a size of 73,216 bytes.Screenshot of Dependency Walker running on Windows 98 displaying the new Shuusou Gyoku game logic DLL and showing off its minimal imports of GetProcessHeap(), HeapAlloc(), and HeapFree().
120
Reposted by ReC98
ReC98 @rec98.nmlgc.net · 13/06/2026
(Yes, I've heard the news and will go right back to work! Just let me finish this really cool thing for Shuusou Gyoku I've been working on for the past few months, and then I'm going to spend an extended amount of time with the main business. OK?)
052
ReC98 @rec98.nmlgc.net · 13/06/2026
sizeof(C_SSG) is 403,280 bytes on 32-bit systems, and 405,664 bytes on 64-bit systems.
120
ReC98 @rec98.nmlgc.net · 31/05/2026
Many thanks to this month's subscribers! The splitting process has escalated to not only cover Shuusou Gyoku's logic, but also my SDL-based engine, laying the groundwork for future modern-system builds. Only missing the CLI now, and of course the blog post. Mid-June, maybe?
Active ReC98 subscriptions for May 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €50 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL to Windows 98 to get Shuusou Gyoku running there again
010
ReC98 @rec98.nmlgc.net · 30/05/2026
Full list of seemingly decorative aspects in Shuusou Gyoku that are actually game logic and must always be simulated because they draw from and advance the single global RNG: • The hearts shown when losing a life • The sparks shown when grazing bullets or hitting an enemy
First Shuusou Gyoku comparison screenshot of the randomness in 1) the hearts shown when losing a life, and 2) the sparks shown when grazing bullets. Taken at the start of Stage 5.Second Shuusou Gyoku comparison screenshot of the randomness in 1) the hearts shown when losing a life, and 2) the sparks shown when grazing bullets. Taken at the start of Stage 5.
1113
ReC98 @rec98.nmlgc.net · 11/05/2026
Point items in Shuusou Gyoku will award negative points if you collect them below the bottom edge of the playfield during the respawn animation. And nobody noticed because 1) the game's 5×7-digit font doesn't have a - sign, and 2) the total score can't decrease, only increase.
182
ReC98 @rec98.nmlgc.net · 10/05/2026
Hilarious Shuusou Gyoku pbg quirk dropping later today
040
ReC98 @rec98.nmlgc.net · 04/05/2026
What's this? A MinGW fork with GCC 15 that targets Windows 98? Small package, no bullshit? Tested and working fine for trivial programs? github.com/redpanda-cpp... Removing the KernelEx and SSE instruction requirements from Shuusou Gyoku's backport has just become a lot cheaper.
github.com
GitHub - redpanda-cpp/mingw-lite: MinGW-w64 GCC distribution. Fast and flexible build scripts; minimal dependencies; works on NT 4.0 and 98. Inspired by w64devkit.
MinGW-w64 GCC distribution. Fast and flexible build scripts; minimal dependencies; works on NT 4.0 and 98. Inspired by w64devkit. - redpanda-cpp/mingw-lite
131
ReC98 @rec98.nmlgc.net · 30/04/2026
Many thanks to this month's subscribers! Very slow month, but I still managed to move enough code to push the headless Shuusou Gyoku subproject to over 100 commits. Very close to solving the hardest issues while juggling Windows 9x and FFI use cases. 4 pushes for sure, though.
Active ReC98 subscriptions for April 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €50 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL2 to Windows 98 to get Shuusou Gyoku running there again
000
ReC98 @rec98.nmlgc.net · 22/04/2026
Debug builds of Shuusou Gyoku had a menu option that turns off collision detection. Past tense because this forks gameplay, desyncs replays recorded with the opposite value, and is therefore very bad. I'll replace it with the alternative approach of just setting lives to 255.
Screenshot of Shuusou Gyoku's Config → Difficulty menu in a build compiled with the PBG_DEBUG macro, showing pbg's four debug options, with the collision-detection-deactivating `Hit [O F F]` option highlighted. The help window describes it as 「[DebugMode] 当たり判定」.
162
ReC98 @rec98.nmlgc.net · 31/03/2026
Many thanks to this month's subscribers! Untangling Shuusou Gyoku's game logic into a library isn't the worst thing in the world, but still nontrivial. Will definitely end up closer to 2 pushes than to 1. Probably doing a bit of TH02 RE after that, given its recent funding.
Active ReC98 subscriptions for March 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €50 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL2 to Windows 98 to get Shuusou Gyoku running there again
031
ReC98 @rec98.nmlgc.net · 21/03/2026
github.com/nmlgc/rec98.... [💰] Confirm T0425 Ember2528 is also back with a smaller €50 subscription towards the better replay format for Shuusou Gyoku, followed by the previous long-term TH03 decompilation and porting roadmap! Thank you very much.
010
ReC98 @rec98.nmlgc.net · 21/03/2026
github.com/nmlgc/rec98.... [💰] Confirm T0424 Another €25 from iruleatgames towards reverse-engineering TH02 or getting it more position-independent, rounding up Yanga's earlier TH02 contributions to a full push. Thank you!
010
ReC98 @rec98.nmlgc.net · 20/03/2026
github.com/nmlgc/rec98.... [💰] Confirm T0423 €200 from iruleatgames towards reverse-engineering TH02, or getting it more position-independent! Thank you so much.
000
ReC98 @rec98.nmlgc.net · 17/03/2026
github.com/nmlgc/rec98.... [💰] Confirm T0422 €43.75 from Arandui towards Shuusou Gyoku's long overdue better replay feature, rounding us up to a full 3 pushes. Thank you very much!
000
ReC98 @rec98.nmlgc.net · 17/03/2026
🚚 TH03's enemy, fireball, explosion, chaining, and combo systems have been fully decompiled and researched! Hardest piece of game logic in all of PC-98 Touhou, by far. 1% of overall code, 6% of TH03 itself. 🐞 1 bug 💣 5 landmines 🎺 8 quirks 🪨 61 pieces of bloat
Screenshot of a video that visualizes TH03's frame data of a fireball-originating explosion against a pellet, demonstrating how these explosions are rendered 8 pixels lower than the position that collision detection uses for their hitbox. Taken from the ReC98 2026-03-16 blog post. The caption reads: "Thanks to the anonymous backer for providing the Anything budget for these multi-row tabs at the end of the 6th push!"Screenshot of a video showcasing what happens when exceeding TH03's 40-enemy cap when constructing a formation sequence that starts with a 12-enemy formation followed by the 16-enemy "Four Lines of Four" formation.  Demonstrates how closely timed bombs can reserve a majority of TH03's enemy slots for explosions, which prevents successive formations with high enemy counts from being spawned for one of the players, which in turn causes them to skip a lot of formations in its internal 256-formation cycle (29 in this example). Taken from the ReC98 2026-03-16 blog post.Screenshot of a video showcasing how removing the enemy damage cap of TH03's explosions can change the timing and placement of explosions. Demonstrated by chaining formation #4 (Racetrack) and colorizing the resulting explosions based on the amount of damage they've dealt to enemies. The caption reads: "I chose black for explosions that currently can't deal damage to enemies. The other 6 colors (dark green, light green, dark red, light red, dark blue, and light blue to represent 0 to 5 dealt hits in this order) are TH03's regular in-game VRAM colors from #5 to #10." Taken from the ReC98 2026-03-16 blog post.Screenshot of a video of a TH03 explosion destroying a fireball and spawning two red fireballs in response, recorded from 1:04 minutes into the Kotohime vs. Marisa demo on Kotohime's playfield. The caption reads: "Note how the "primary" new fireball described above is spawned from the center of its explosion, while the "additional" new fireball is spawned from the center of the explosion that caused the old fireball to explode." Taken from the ReC98 2026-03-16 blog post.
1105
ReC98 @rec98.nmlgc.net · 16/03/2026
TH03 is about to get thoroughly analyzed and documented down to its core. ≥13,100 words. Heaviest blog post by HTML size so far. 2.36× more PC-98 Touhou reverse-engineering than the previously biggest RE post. Out in a few hours.
The table of contents of the upcoming 2026-03-16 post on the ReC98 blog. It reads:

1. An important note about durations in TH03
2. TH03's chaining system
3. Difficulty-specific tuning
   • round_speed
   • enemy_speed
     • Angle tuning
4. TH03's combo system
   • Boss Attacks and Panics
5. TH03's enemy formation scripts
   • Gameplay details
   • Function reference
6. TH03's enemies themselves
7. TH03's explosions
8. TH03's fireballs
   • Destroying fireballs with regular player shots or Charge Shots
9. TH03's score reduction and extend glitches
   • The fix (← new builds here!)
10. Completing the Fediverse migration
    • Polls
    • Bluesky rant, part 2
0114
ReC98 @rec98.nmlgc.net · 08/03/2026
Almost done writing! Still need to spend some more coding time on the blog UX though, so that you can seamlessly switch between two layers of tabs and the 30 hitbox videos underneath. (Word count already above 10,000, by the way.)
Work-in-progress screenshot of the TH03 explosion hitbox figure from the upcoming ReC98 blog post, displaying the hitbox of an explosion that originated from a 48×48-pixel enemy against a 64×64-pixel enemy. With 5 different kinds of explosions (from 16×16/32×32/48×48/64×64 enemies or fireballs) that can hit 6 different types of gameplay entities (16×16/32×32/48×48/64×64 enemies, pellets, or fireballs), there are a total of 5 × 6 = 30 hitboxes that the blog post has to visualize, which necessitates two layers of tabs and some coding effort to make it work nicely.
010
ReC98 @rec98.nmlgc.net · 28/02/2026
Many thanks to this month's subscribers! Life priorities have shifted and I'll likely be even slower in the foreseeable future. Then again, what else is left in PC-98 Touhou that's as complex as TH03's enemies, fireballs, and explosions? Blog post should be out next week.
Active ReC98 subscriptions for February 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting the SDL 3 build of Shuusou Gyoku back to Windows 98
010
ReC98 @rec98.nmlgc.net · 27/02/2026
Bluesky confirmed for having the worst video processing pipeline in the entire social media landscape. Reducing *frame rates* is disgusting at a level that even Twitter wouldn't step down to.
Command-line output showing a metadata comparison between the original lossless WebM file for TH03's enemy formation #3 and the resulting blob of the Bluesky upload, downloaded via `goat blob export`, via ffprobe. Shows how Bluesky not only converted the video to H264 with YUV420P chroma subsampling (the same format Twitter enforces for its videos, which is bad enough), but even chopped the video down to 30 FPS, losing almost half of all frames in the original video.
031
ReC98 @rec98.nmlgc.net · 06/02/2026
Alright, TH03 formation code! I'm going to post all 18 scripts over the next few days. Structure/logic by ZUN, formation names by the gameplay community, function/parameter names by me, order as in ENEDAT.DAT. Videos recorded on Lunatic, where enemy speed equals script durations.
160
ReC98 @rec98.nmlgc.net · 03/02/2026
Imagine forking Nitter and running your own instance just to scrape your own alt text and polls because Twitter doesn't include either of them in its data archive. Oh well, Fediverse migration is complete. Please follow @rec98@nmlgc.net for the highest-quality images and videos.
Screenshot of the https://activitypub.nmlgc.net frontpage. Note the custom CSS removing the header and orange borders of GoToSocial's default theme for a more subtle overall look.Screenshot of the Fediverse version of the 2025-05-10 blog post announcement tweet (01JTY34B4R7VYRA1WNN421XW32) as rendered by Phanpy (https://phanpy.social), showing off how my original painstakingly hand-written alt text has now been imported into the Fediverse.Screenshot of the Fediverse version of the TH04 Stage 4 Marisa Divide Error community bugfix choice tweet (01G0Q480XRJKDWCM2N7AWP7HN8) as rendered by the GoToSocial fork of Masto-FE (https://masto-fe.superseriousbusiness.org/), showing off the exact results of the original Twitter vote.Screenshot of the Fediverse version of a video recording of a remake of the curve animation in the background of TH03's character selection (01JC6WWM08NM6TWRGK65N2R4ZY), as rendered by Phanpy's video player (https://phanpy.social), showing off high-quality RGB video as opposed to Twitter's enforced YUV420 chroma subsampling that murders the quality of pixel art and synthetic images of any kind.
010
ReC98 @rec98.nmlgc.net · 31/01/2026
Many thanks to this month's subscribers! TH03's enemy, fireball, and explosion code is in the very final stage of QA, but the blog post will still take a while. Life's been very slow lately. There'll be another exciting series of posts before then, though!
Active ReC98 subscriptions for January 2026:

• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting the SDL 3 build of Shuusou Gyoku back to Windows 98
030
ReC98 @rec98.nmlgc.net · 29/01/2026
> Stumble over another MIDI sequencer that automatically decodes GS SysEx > OTAMA98 by MISO > Still works on Windows 11 > No bloat, no lengthy "analysis" phase, no hardware dongles, no bullshit > Even does XG! Though not as detailed… > …and GS support stops at SC-88, no Pro 😩
Screenshot of OTAMA98 by MISO running on Japanese Windows 98, showing ZUN's arranged MIDI of Reimu's theme from Shuusou Gyoku (二色蓮花蝶 ~ Ancients, ssg_18.mid) together with the program's About box. The list window displays the conductor track and decodes the first few GS messages there, but leaves SC-88Pro insertion effects in their raw byte representation.Screenshot of OTAMA98 by MISO running on Japanese Windows 98, showing the Yamaha XG demo track "Storms Over Jupiter" by David J. Reading together with the program's About box. The list window shows decoded XG messages on Track 1, although the effect parameters are sadly numbered instead of being labeled with their semantic meaning. (Reverb Parameter 1 is Reverb Time, for example.)
2115
ReC98 @rec98.nmlgc.net · 28/01/2026
And yes, the extend glitch happens for the same reason once your score is ≥20 million and if that one segment lies at 0x3E?? (P1) or 0x2E?? (P2). And 0x2EF4 is exactly where the 2021 Ultimate Collection happens to place that segment if you play on anything other than DOSBox-X.
030
ReC98 @rec98.nmlgc.net · 18/01/2026
Found the cause of TH03's score reduction glitch! youtu.be/JltuH7nAO4Y?... It occurs on certain PC-98 setups if you destroy a fireball with anything that isn't an explosion on a frame where you previously got a VSync/PMD interrupt within a specific window of CPU instructions.
youtube.com
東方夢時空 ~ Phantasmagoria of Dimensional Dream - Score Reduction Glitch
YouTube video by KirbyComment
193
ReC98 @rec98.nmlgc.net · 01/01/2026
github.com/nmlgc/rec98.... [💰] Confirm T0414 Ember2528 is still with us, and once again bought all remaining capacity from the store! €154 towards his current long-term plan of Shuusou Gyoku replays followed by TH03 decompilation and porting. Thank you so much!
github.com
[💰] Confirm T0414 · nmlgc/rec98.nmlgc.net@0f375a5
Ember2528 is still with us, and once again bought all remaining capacity from the store! €154 towards his current long-term plan of Shuusou Gyoku replays followed by TH03 decompilation and porting....
000
ReC98 @rec98.nmlgc.net · 01/01/2026
Many thanks to this month's subscribers! (As in, December's.) The current plan: 1) Lots of TH03 gameplay code (≥8.65% of MAIN.EXE) 2) Headless Shuusou Gyoku for automated replay validation 3) Probably a bit of TH02? Unless we've got clearer funding for something else by then.
Active ReC98 subscriptions for December 2025:

• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting the SDL 3 build of Shuusou Gyoku back to Windows 98
030
ReC98 @rec98.nmlgc.net · 01/01/2026
🚚 Delivered a complete decompilation of and research into TH03's bullet system! A minor iteration on TH02's rather decent system, but definitely the point where bullet systems in PC-98 Touhou took a turn for the worse. 🐞 1 bug 💣 1 landmine 🎺 4 quirks 🪨 33 pieces of bloat
Screenshot of the overview table of all 16×16 bullet sprites and their animations used by all 9 characters in TH03. The caption reads: "The SPRITE16 area of certain characters might contain other bullet-like sprites, but these are used by a different gameplay system than the one described in this post." Taken from the ReC98 2025-12-31 blog post.Screenshot of a video demonstrating how transferred pellets in TH03 have to physically travel through the 32 pixels before they appear on the other playfield. Recorded by revealing the VRAM contents below the opaque black TRAM cells that hide these pixels in regular gameplay, and clearing these contents on every frame. Taken from the ReC98 2025-12-31 blog post.Screenshot of two videos of TH03 Mima's and Chiyuri's one Boss Attack pattern whose bullets use the trail sprite feature of the game's bullet system, placed next to each other. Taken from the ReC98 2025-12-31 blog post.Screenshot of a video of TH03 Chiyuri firing multiple instances of her one Boss Attack pattern whose bullets use the trail sprite feature of the game's bullet system on Boss Attack level 1. Demonstrates how the slower bullet speed on that level will cause glitches when Chiyuri spawns a new 48-ring before all bullets of the previous 48-ring were clipped. Taken from the ReC98 2025-12-31 blog post.
182
ReC98 @rec98.nmlgc.net · 31/12/2025
What was this delay. In exchange, I've got an unexpectedly long >6,500-word blog post about TH03's bullet system and a certain other issue, coming your way very soon. Fingers crossed I'll get it out while it's still 2025 in UTC.
1. A cursory look at character-specific attacks
2. TH03's bullet logic
   • High-level overview
   • Trail sprites
   • Rings and other groups
   • Transferred pellets
3. TH03's bullet renderer
   • Pellets, and unresolved VRAM alignment questions
   • Delay clouds, and the unfortunate lack of a SPRITE16 feature
4. Migrating away from Twitter
   • Twitter's technical downfall (not clickbait)
   • Trying a Bluesky PDS
   • Trying Mastodon
   • Deciding on GoToSocial as a Fediverse server
150
ReC98 @rec98.nmlgc.net · 31/12/2025
TH03 Chiyuri has a very rare quirk where 1 or 2 bullets are randomly missing from the 48-ring pattern in her Level 1 or 2 Boss Attack if she launches it multiple times in a row. Explaining the cause certainly contributed to the massive delay of the upcoming blog post…
030
ReC98 @rec98.nmlgc.net · 30/12/2025
How to disqualify yourself for self-hosted archival storage: • Effectively prevent backdating by prioritizing crawl date in the AppView everyone uses • Importer insists on JPEG, and ignores tweets if you try PNG 🤮 Onto the Fediverse, then. activitypub.nmlgc.net/@rec98
Screenshot of a certain microblogging platform's insistence to prominently display the date it crawled a post from a PDS, demoting the PDS's actual post creation date to an "archived" date. This spams user timelines and makes it hard to navigate the post history, disqualifying said platform for self-hosted archival storage.

(Also, any ActivityPub server allows me to freely edit posts and ensure lossless quality for uploaded media.)
120
ReC98 @rec98.nmlgc.net · 09/12/2025
The border between the two playfields in TH03 is not just visual, but an actual part of the simulated game world. Every transferred pellet or fireball physically travels through these 32 pixels before it appears on the other playfield.
050
ReC98 @rec98.nmlgc.net · 30/11/2025
Many thanks to this month's subscribers! Once again, the scope has expanded to include TH03's bullet and combo systems. Bullets are only missing one detail and will get a dedicated blogpost very soon. We're going to see at least 5 pushes and 10% more RE for MAIN.EXE in December.
Active ReC98 subscriptions for November 2025:

• €300 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL2 to Windows 98 to get Shuusou Gyoku running there again
020
ReC98 @rec98.nmlgc.net · 25/11/2025
TH03 decompilation will progress *so quickly* once I get the basic gameplay systems done. ZUN really did implement most of the character-specific systems by copy-pasting the same code 9 times with minor variations. That means ~3× the decompilation speed of TH01 at its fastest.
030
ReC98 @rec98.nmlgc.net · 31/10/2025
Many thanks to this month's subscribers! The next delivery will fully cover TH03's enemy, fireball, and explosion systems. No netplay this year though, Shuusou Gyoku replays have shaped up to be too complicated. (It might also make sense to have TH03 replays before netplay.)
Active ReC98 subscriptions for October 2025:

• €300 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL2 to Windows 98 to get Shuusou Gyoku running there again
030
ReC98 @rec98.nmlgc.net · 21/10/2025
While I'm working on TH03, let's design the replay format I'll use for Shuusou Gyoku and PC-98 Touhou! If there's anything you've ever wanted to see in a replay format, now's your chance to influence the design and feature set. github.com/nmlgc/ssg/is...
Screenshot of my initial design notes for the upcoming replay format used in the ReC98 builds of Shuusou Gyoku and PC-98 Touhou. Taken from https://github.com/nmlgc/ssg/issues/36#issuecomment-3429282865.
010
ReC98 @rec98.nmlgc.net · 20/10/2025
A landmark Neko Project 21/W release happened yesterday! SimK has finally murdered the horrible abomination that was the secondary set of ASCII glyphs in Neko Project's old auto-generated replacement for the PC-98 ROM font. twitter.com/simk98l/stat...
twitter.com
SimK on X: "Neko Project 21/W ver0.86 rev96β5を公開しました。 ・代替フォント生成時に機種依存アルファベットを極力幅6pxになるようにした ・フルスクリーン時のDirect3D描画が上手く行かない場合がある不具合を修正 https://t.co/2FpJ5kktFH" / X
Neko Project 21/W ver0.86 rev96β5を公開しました。 ・代替フォント生成時に機種依存アルファベットを極力幅6pxになるようにした ・フルスクリーン時のDirect3D描画が上手く行かない場合がある不具合を修正 https://t.co/2FpJ5kktFH
161
ReC98 @rec98.nmlgc.net · 19/10/2025
🚚 Delivered the planned Shuusou Gyoku maintenance release. SDL 3 is now a hard dependency (even on Windows 98!), the SDL 2 code path is gone, and the Linux version now compiles with GCC ≥15. No new features, but a few bugfixes and speedups surrounding screenshots and fonts.
Screenshot of Shuusou Gyoku's main menu as rendered by the P0326 build on Windows 98, now using the correct MS Gothic font.
160
ReC98 @rec98.nmlgc.net · 30/09/2025
Many thanks to this month's subscribers! The current plan for the rest of the year: 1) Shuusou Gyoku maintenance (will quickly free up some budget) 2) TH03 RE 3) Better replays for Shuusou Gyoku 4) TH03 netplay (would be nice to get it done by the end of the year)
Active ReC98 subscriptions for September 2025:

• €300 from Ember2528 towards better replays for Shuusou Gyoku, followed by a long-term plan to first decompile TH03, adding replays, porting it to modern systems, and then implementing netplay (although we're also going for a more short-term option of having netplay on PC-98)
• €125 from [Anonymous] towards anything (including tooling)
• €35 from [Anonymous] towards TH03 RE
• €10 from Root towards porting SDL2 to Windows 98 to get Shuusou Gyoku running there again
010
ReC98 @rec98.nmlgc.net · 30/09/2025
🚚 Released the first version of the TH03 Anniversary Edition together with the first debloated builds of all five games! Primarily reduces lag in menus and cutscenes as a first step towards portability, but also comes with a single new feature. Download: github.com/nmlgc/ReC98/...
Screenshot of the VS Start menu in the P0323 build of TH03's Anniversary Edition, showing off the new Quit option and the version text. The caption reads: "Matching the style of the version text to the style of 「☪ The Phantasmagoria of Dim. Dream」 on the other side seemed like the least bad option here. That outline is indeed created by rendering every line 9 times…" Taken from the ReC98 2025-09-29 blog post.Screenshot of a video of the flashing 東方封魔録 animation before TH02's title screen, as rendered by the original game on Neko Project 21/W with a clock speed of 2.4576 × 27 = 66.3552 MHz. Showcases screen tearing and slow .PI blitting. Taken from the ReC98 2025-09-29 blog post.Screenshot of a video of TH03's character selection screen in 1P vs. CPU mode, showcasing the screen tearing landmine upon entering the screen in the original game. The caption reads: "Recorded on DOSBox-X with 375,000 cycles, since exact machine specifications are not important to demonstrate these landmines." Taken from the ReC98 2025-09-29 blog post.Screenshot of a video of leaving TH02's HiScore menu, as rendered by the original game on Neko Project 21/W with a clock speed of 1.9968 × 17 = 33.9456 MHz. Showcasing both a landmine (ZUN copying the invisible VRAM page onto the visible one without any palette trick to hide the copy, resulting in mixed pixels) and a bug (the scoreboard should have been removed from the PC-98's text layer by that point). The caption reads: "Recorded at 1.9968 × 17 = 33.9456 MHz for a change to magnify the jank that you perhaps wouldn't see at higher clock speeds." Taken from the ReC98 2025-09-29 blog post.
1157
ReC98 @rec98.nmlgc.net · 29/09/2025
The end is near! >9,800 words, and probably the last big blog post for this year. I wanna code again! Out within the next few hours…
The table of contents of the upcoming 2025-09-29 post on the ReC98 blog. It reads:

1. The scope
2. Retaining menu backgrounds in conventional RAM
   • Fighting heap fragmentation
3. Resolving screen tearing landmines
   • Deterministically running tasks in VBLANK
   • An easy example (TH04/TH05 main menu reinitialization)
   • A hard example (TH03 character selection)
   • A lunatic example (TH02 High Score screen)
4. Intermission: Handling unused code on fork branches
5. Merging TH02-TH05's OP.EXE and MAINE.EXE/MAINL.EXE
   • Scorefile inconsistencies
   • Keeping TH05's binary size low
6. Replicating TH02-TH05's GAME.BAT in C++
   • Calculating correct resident sizes
   • Additional features and obstacles
7. Topping it off with an actual feature
030
ReC98 @rec98.nmlgc.net · 29/09/2025
$ git diff --stat debloated~193 debloated […] 259 files changed, 4145 insertions(+), 8099 deletions(-) ~4,000 lines of ad-hoc PC-98-native graphics code, bloat, landmines, bloat- and landmine-documenting comments, and binary-specific inconsistencies removed from game code 🎉
010
ReC98 @rec98.nmlgc.net · 17/09/2025
🚚 Part 3 is out, bringing five disconnected and small decompilations and actually shifting the percentages on the front page for a change! 🐞 5 bugs 💣 3 landmines 🎺 2 quirks 🪨 24 pieces of bloat
The table of contents of the 2025-09-16 post on the ReC98 blog. It reads:

1. Revising TH02's main menu
2. Finishing TH03's High Score menu
3. TH04's title screen animation
4. TH05's All Cast sequence
5. Finishing TH03/TH04/TH05 scorefiles
6. A typo in TH04 Reimu A's Good EndingMockup of the TH01's "HIT KEY" string in TH02, using the unused gaiji string that's still present in ZUN's original code. The caption reads: "This string is so unused that we don't even know its intended position, though." Taken from the ReC98 2025-09-16 blog post.Screenshot of a video showcasing the default name replacement in TH03's High Score menu, triggered by entering `BBBBBBBB`. The video later showcases how name replacement happens for any character, not just `A` or an empty name. Taken from the ReC98 2025-09-16 blog post.Screenshot of a video of TH04's title animation, on the last frame of the separately faded-in black outlines of the title screen's background image. The caption reads: "Also note that single black pixel in Reimu's gohei. 🎺" Taken from the ReC98 2025-09-16 blog post.
271