- Group:
- Tech Member: Tech Members
- Active Posts:
- 312 (0.42 per day)
- Most Active In:
- Engineering & Reverse Engineering (226 posts)
- Joined:
- 06-July 13
- Profile Views:
- 9790
- Last Active:
14 minutes ago- Currently:
- Viewing Board Index
My Information
- Member Title:
- Needs to make an avatar
- Age:
- Age Unknown
- Birthday:
- August 22
- Gender:
-
Male
- Location:
- Englandland
Contact Information
- E-mail:
- Private
Previous Fields
- National Flag:
- uk
- SA2 Emblems:
- 5
Latest Visitors
-
Super Egg 
18 Jul 2015 - 13:28 -
JorgeBunny 
10 Jun 2015 - 17:25 -
NeoFusionBox 
25 May 2015 - 13:59 -
TheStoneBanana 
01 May 2015 - 04:12 -
nineko 
14 Apr 2015 - 04:26
Posts I've Made
-
In Topic: Some changes and fixes for Sonic 2
11 July 2015 - 08:02 PM
(Ripped largely from ReadySonic)
Ever get snared in a bridge while in debug mode? Obviously, those things don't make any attempt to avoid interacting with the player while in debug mode, while many other objects do.
First up, let's fix up the debug object itself: go to Debug_Init and, below the 'move.b #AniIDSonAni_Walk,anim(a0)', add this:
btst #3,status(a0) ; is Sonic standing on an object? beq.s + ; if not, branch bclr #3,status(a0) ; clear Sonic's standing flag move.b interact(a0),d0 ; get object ID clr.b interact(a0) ; clear object ID lsl.w #6,d0 addi.w #Object_RAM,d0 movea.w d0,a2 bclr #3,status(a2) ; clear object's standing flag +
Since Sonic and certain objects keep track of if they're being touched, and what by, we need to clear all that when entering debug mode. Without this additional fix, our fix would cause another bug where bridges stay deformed when entering debug mode.
Next up, the bridge itself. sub_F872 is what handles deforming the bridge, and changing the player's Y position accordingly. Since AI Tails doesn't enter debug mode with the player, we don't want to ignore the entire subroutine; only the part involving the main character.
Above 'lea (MainCharacter).w,a1', add this check:
tst.w (Debug_placement_mode).w bne.s +++
Now we need to mess with those annoying nameless labels. Add a '+' before the 'rts', and change the 'blo.s ++' to 'blo.s +++'. -
In Topic: Bunnie In Sonic 1
11 July 2015 - 07:02 AM
Why release something with a day-1 bug list? -
In Topic: Sonic 2 Clone Driver v2
09 July 2015 - 07:09 AM
Here's an update that's been collecting dust since April.
v2.3
- Made FadeOutSFX use d6 instead of d7, so that it doesn't conflict with Sound_PlayBGM
- Optimised PSG envelopes with more efficient use of flags
- Made previous version's bugs toggleable with Fix_DriverBugs
- Added Valley Bell's Sega chant pan fix
- Added Valley Bell's 0 FM track fix
- Added Valley Bell's cfFadeInToPrevious PSG noise type fix
- Added a (commented out) call to FadeOutSpecSFX in Sound_PlayBGM
- Un-commented-out the calls under Sound_PlayBGM
- S2-ified FadeOutSFX
- Corrected StopSoundAndMusic comment
- Improved cfFadeInToPrevious FM6 fix
- Reduced RAM usage by employing a trick from S&K's driver: the SFX/special SFX share RAM with the 1up music backup
- Switched to using 'STRUCT' to define track RAM
- Defined driver RAM with phase/ds.b combo
- Split v_1up_ram_copy into v_1up_ram_copy and v_1up_variables (variables now go after tracks)
- As part of the SFX/track backup share, the playback control bytes of all tracks are separately backed-up
- Made Sound_PlayBGM's extra life code clear the special SFX tracks' 'is playing' bit
- Special SFX code above FMDACInitBytes now uses tst.b instead of tst.w
- Moved v_special_voice_ptr back next to v_voice_ptr (RAM is dynamic now, so it can go here without wasting any RAM if unused)
- Made continuous SFX RAM toggleable
- Reduced zTrack size to $2E by changing LoopCounters from 4 bytes to 2 bytes, as S&K's driver has it
- Reduced zTrack size to $2C with some track-specific RAM usage
- FinishTrackUpdate no longer clears VolFlutter on non-PSG tracks
- Removed now-useless label (loc_721B6)
Anyhow, this is a major update because of the massive RAM improvement (and it's about time the v2.2.X line died off).
Now, where's my feedback saying that I'm a god that should be worshipped? - Made FadeOutSFX use d6 instead of d7, so that it doesn't conflict with Sound_PlayBGM
-
In Topic: Basic Questions & Answers thread
07 July 2015 - 02:10 PM
Wouldn't updating CRAM mid-frame cause those VDP dots to appear onscreen? -
In Topic: Basic Questions & Answers thread
06 July 2015 - 06:30 AM
I tried once, a long time ago. At the time, it seemed unfixable.
In LevelSelect_DrawIcon, the plane mappings are updated, and then the palette is. Problem is, updating the plane doesn't work like updating a sprite, where the change only appears on the screen towards the end of the frame, rather, it updates immediately, before the palette update, which, itself, takes affect during V-Int.

Find My Content
14 minutes ago
Male