Proto:Banjo-Kazooie
This page details one or more prototype versions of Banjo-Kazooie.
To do: Provide instructions of how one can look into the debug disks themselves. |
Two 64DD debug disks used by Rare were found and dumped, dating around December 1997. While neither of these are playable builds, lots of the data inside differs from the final game.
Contents
Map Differences
Three maps have been found so far in both of the dumps: Treasure Trove Cove, Clanker's Cavern, and Clanker's Cavern Lobby.
Treasure Trove Cove
This looks very similar to the final game's map, but the lighthouse and wooden stairs are attached to the map and not separate objects like the final game. This was most likely done to improve performance on the map.
To do: Is there any actual difference in the BK model here? |
Player and level objects found in the RAM when it was dumped: Banjo and Kazooie, various crates, a palm tree, a Jiggy with particles, the map's skybox, and a blue egg shell fragment. Banjo & Kazooie's model is different from the final game, but the other objects appear to be the same as the final.
- Note that, due to how the model is programmed, Kazooie's extracted model appears with her Turbo Trainers and Wading Boots intersecting through her feet, which is how it works in the final game as well.
Clanker's Cavern Lobby
Probably the most interesting map of the dump, an early version of the Clanker's Cavern Lobby found in Grunty's Lair. This was likely made right as they started to work on Grunty's Lair, given all the placeholder and missing textures. The layout of the map seems exactly the same as final, but with all the textures not being done at the time of the dump.
The objects for the Lobby. As with the previous map, it shares a Banjo & Kazooie model that is different from the final game. There is a thin Jiggy that looks like pages in a book, using a texture that is a low-quality render of an image of an early Mumbo's Mountain when it looked more like a jungle. This was probably a placeholder texture for the puzzle. All the other objects are structurally the same as final, but are missing textures and use placeholder colored textures.
Graphical Differences
Mumbo Token
Proto | Final |
---|---|
The Mumbo Token is at 64×64 resolution and has 14 frames of animation. The final version cut this to 32×32 and 12 frames.
Text
Songs
These are all the internal song names found in the RAM dumps. Names noted with "*" are only in the GL64 dump and are not in the Willis dump.
Blank Boss 1 Jungle 2 Snow 2 Bells Beach Swamp Crab Cave Title Notes Jinjo Feather Egg Jigpiece Sky Spooky Training Lighthouse Crab Shell Feather Inv Extra life Honeycomb Empty honey piece Extra honey Mystery You lose Termite nest
Outside whale Spell Witch House In whale Desert In spooky Grave Church Sphinx Invulnerabilty Collapse Snake Sandcastle Summer Winter Right Wrong Achieve Autumn Default forest 5 Jinjos Game over Nintendo Ship Shark Ship inside 100 Notes Door Open
Organ sequence Advent Slalom Race win Race lose Jigsaw magic Oh dear Up Down Shamen Hut Jig 10 Carpet Squirrel Hornet Treetop Turtle Shell House Summer House Autumn Out Buildings Hornet 2 Cabins Rain Jigsaw Open Jigsaw Close Witch 1 Witch 2 Witch 3 Witch 4
Witch 5 Mr Vile Bridge Turbo Talon Trot Long legs Witch 6 Boggy sad Boggy happy Quit Witch 7 Witch 8 Spring Squirrel attic Lights Box Witch 9 Open up Puzzle complete Xmas tree Puzzle in Lite tune Open extra Ouija Wozza Intro Gnawty Banjo's Pad Pause tune
Pause* Cesspit* Quiz* Unnamed piece Unnamed piece Unnamed piece Unnamed piece
"Pause tune" and "Boss 1" are not in the final game. "Pause tune" seems to be an earlier name for the "Pause" song found in the Willis and final game's song list. Boss 1 is the most intriguing song, as it's an unused combination mix of the Grunty Fight theme, the Jungle Japes Minecart theme from Donkey Kong 64, and King Kut Out's theme from Donkey Kong 64. Boss 1 has been known about for years as Grant Kirkhope had released this unused track on his Bandcamp which he later took down due to copyright reasons.
These are the tracks from the final game that are not found in either of the dumps:
Scrap Frog GameBoy Lair Red Extra Gold Extra Egg Extra Note door Cheaty Fairy Skull Square Grunty Square Banjo Square Joker Square Music Lab Fade Up Puzzle Out Secret Gobi Secret Beach Secret Ice Secret Spooky Secret Squirrel Secret Egg Jinjup Turbo Talon Trot short Fade Down Big Jinjo T1000 Credits
T1000x Big Door Descent Wind up Air Do jig Picture Piece up Piece down Spin BarBQ Chord1 Chord2 Chord3 Chord4 Chord5 Chord6 Chord7 Chord8 Chord9 Chord10 Shock1 Shock2 Shock3 Shock4 Sad grunt Podium Endbit Rock Last Bit
World/Overlay Names
These are the overlay names found in both dumps. All but one of these overlays are internal world names, which is "core". Names noted with "*" are only in the GL64 dump and are not in the Willis dump.
core coshow whale
haunted desert beach
jungle swamp ship
snow tree training*
intro* witch*
The "core" overlay seems to be the only overlay name that was changed in the final game, in which it's called "gs". The "training", "intro", and "witch" overlays are all missing from the Willis dump, which presumably means that Spiral Mountain, cutscenes, and Grunty's Lair were not added to the game at the time of the Willis dump. The only overlay that is missing in both dumps and is present in the final game is the "battle" overlay, which is the Grunty fight.
These are the overlays from the final game that are not found in either of the dumps:
gs battle
Debugging Text
This string is located in every Banjo-Kazooie and Banjo-Tooie build with different numbers after the colon. It might be automatically generated by the OS to label the temporary junk directories when creating a new game version.
HjunkDire:584817
Build date and credits of some unknown tool created in 1996:
RSP SW Version: 2.0G, 09-30-96 SGI U64 GFX SW TEAM: S Anderson, S Carr, H Cheng, K Luster, R Moore, N Pooley, A Srinivasan
Build date and credits of some unknown tool created in 1997:
RSP SW Version: 2.0H, 02-12-97 SGI U64 GFX SW TEAM: S Anderson, S Carr, H Cheng, K Luster, R Moore, N Pooley, A Srinivasan
Some player-related debug strings located not too far away from the huge block of debug strings. The final game also has a very similar block of debug strings.
seqp->state != AL_PLAYING n_seqplayer.c seqp->state == AL_STOPPED n_seqplayer.c FALSE n_seqplayer.c FALSE n_seqplayer.c event->type == AL_SEQ_MIDI_EVT || event->type == AL_SEQP_MIDI_EVT n_seqplayer.c TRACE: '%s' {Line %d} n_seqplayer.c TRACE: '%s' {Line %d} n_seqplayer.c seqp->bank != NULL n_seqplayer.c inst != NULL n_seqplayer.c
Debug strings of the Willis dump.
glfx.c : glFxMake :(CS) : Allocating audio heap glfx.c : audioloop :(CS) : Command list buffers glfx.c : audioloop :(CS) : Audio buffers cmdLen <= maxRSPCmds glfx.c audio: ai out of samples *** STACK WARNING *** The program stack is rapidly becoming full. %.1f%% of the stack is now used. Inform a programmer. (PJM) To increase stack space you must change 'StackSize' & 'StackWarningAt' in 'glglobal.h' edMemAllocA(): Size requested %d Bytes edMem: Out of memory in Editors' Arena (ERROR %d) : *** %s *** edmem.c %7d (%2d%%) %s%6d byt: %s MEMCHECK: Previous edMemTotalTrace in '%s' on line %d MEMCHECK: edMemTotalTrace * ERROR * in '%s' on line %d See programmer's help comment in edMemTotal (glmempjm.c) for more info. Program will now hang. edmem.c edMemTotal: %s corrupted (%p) for Block @ %p edMemTotal: (%p->%s)->%s does NOT equal %p region %p, %s %p, %s->%s %p ->nextBlock ->previousBlock ->nextFreeBlock ->previousFreeBlock nextBlock previousBlock previousBlock nextBlock nextFreeBlock previousFreeBlock previousFreeBlock nextFreeBlock edMemTotal: (Bad memory! FreeMem should equal FreeMemBack.) FreeMem:%d, FreeMemBack:%d The Free memory was different when searching thru it forwards & then backwards edMemTotal: (Bad memory! UsedMem should equal UsedMemBack.) UsedMem:%d, UsedMemBack:%d The used memory was different when searching thru it forwards & then backwards edMemTotal: (Bad memory! UsedMem+FreeMem should equal Arena space.) UsedMem:%d, FreeMem:%d, UsedMem+FreeMem=%d Arena=%d edMemTotal: (Bad memory! UsedMem should equal internal running total) UsedMem:%d, RunTotal:%d MemAlloc:+ edMemFree: Why are you trying to Free up a free region??? (@ %p) edMemFree was called from line %d in file %s. MemFree :- edmem.c ----edMem-----(Development Arena)---------------- Arena at %p Arena size %d (+2BOOKMARKS = %d) firstfree %p ADMIN {Region Size} DATA {Region Size} Status %16p %7d *** Memory BOOKMARK *** %16p %7d %16p %7d Free: Used: %s Can't tidy beyond: '%s' ** NO MESSAGE ** Entries listed %d Total Memory used by listed regions %d (of which: %d is memory ADMIN, and %d is alignment_padding/wasted) ------------------------------------------------- Total memory used is %d Total memory free is %d __osRunningThread->id==4 sndplayer.c suaudio.c : suaudioMake :(PJM): Slots for SFX/MIDI (array) suaudio.c Slots[slot] suaudio.c Slots[slot] suaudio.c thRcp: Audio queue overflow thRcp: Gfx queue overflow thRcp: Flush != 1 thRcp: RDP done without graphics start thRcp: Flush != 0 thRcp: Flush != 0 %c thRcp: Stuck on flush %c thRcp: Stuck on frames yielding %c thRcp: Stuck on WatchGfx thRcp: Audio queue is empty after yield thRcp: Flush !- 0 thRcp: Unknown msg (1) (%p) thRcp: Unknown msg (2) DPC_STATUS_XBUS_DMEM_DMA DPC_STATUS_FREEZE DPC_STATUS_FLUSH DPC_STATUS_START_GCLK DPC_STATUS_TMEM_BUSY DPC_STATUS_PIPE_BUSY DPC_STATUS_CMD_BUSY DPC_STATUS_CBUF_READY DPC_STATUS_DMA_BUSY DPC_STATUS_END_VALID DPC_STATUS_START_VALID SP_STATUS_HALT SP_STATUS_BROKE SP_STATUS_DMA_BUSY SP_STATUS_DMA_FULL SP_STATUS_IO_FULL SP_STATUS_SSTEP SP_STATUS_INTR_BREAK SP_STATUS_YIELD SP_STATUS_YIELDED SP_STATUS_TASKDONE SP_STATUS_SIG3 SP_STATUS_SIG4 SP_STATUS_SIG5 SP_STATUS_SIG6 SP_STATUS_SIG7 BD IP8 IP7 IP6 IP5 IP4 IP3 IP2 IP1 Interrupt TLB modification exception TLB exception on load or instruction fetch TLB exception on store Address error on load or instruction fetch Address error on store Bus error exception on instruction fetch Bus error exception on data reference System call exception Breakpoint exception Reserved instruction exception Coprocessor unusable exception Arithmetic overflow exception Trap exception Virtual coherency exception on intruction fetch Floating point exception (see fpcsr) Watchpoint exception Virtual coherency exception on data reference CU3 CU2 CU1 CU0 RP FR RE BEV TS SR CH CE DE IM8 IM7 IM6 IM5 IM4 IM3 IM2 IM1 KX SX UX USR SUP KER ERL EXL IE FS C Unimplemented operation Invalid operation Division by zero Overflow Underflow Inexact operation EV EZ EO EU EI FV FZ FO FU FI RN RZ RP RM %s 0x%08x < , %s > %s 0x%08x < , %s > RDP current = 0x%08x (0x%016llx) RDP start = 0x%08x (0x%016llx) RDP end = 0x%08x (0x%016llx) RDP status: RSP status: Free memory was %d bytes. %c epc 0x%08x cause sr badvadr 0x%08x Fault in thread %d: at:x%08x v0:x%08x v1:x%08x a0:x%08x a1:x%08x a2:x%08x a3:x%08x t0:x%08x t1:x%08x t2:x%08x t3:x%08x t4:x%08x t5:x%08x t6:x%08x t7:x%08x s0:x%08x s1:x%08x s2:x%08x s3:x%08x s4:x%08x s5:x%08x s6:x%08x s7:x%08x t8:x%08x t9:x%08x gp:x%08x sp:x%08x s8:x%08x ra:x%08x fpcsr f0 %.7e f12 %.7e f22 %.7e f2 %.7e f14 %.7e f24 %.7e f4 %.7e f16 %.7e f26 %.7e f6 %.7e f18 %.7e f28 %.7e f8 %.7e f20 %.7e f30 %.7e f10 %.7e FYT glvi.c %c We seem to be stuck in an infinite loop! Dump for MAIN thread follows ... Camera position: Camera rotation: <= action && action < glJoyActionMax gljoy.c newOwner == 0 gljoy.c Blank Boss 1 Jungle 2 Snow 2 Bells Beach Swamp Crab Cave Title Notes Jinjo Feather Egg Jigpiece Sky Spooky Training Lighthouse Crab Shell Feather Inv Extra life Honeycomb Empty honey piece Extra honey Mystery You lose Termite nest Outside whale Spell Witch House In whale Desert In spooky Grave Church Sphinx Invulnerabilty Collapse Snake Sandcastle Summer Winter Right Wrong Achieve Autumn Default forest 5 Jinjos Game over Nintendo Ship Shark Ship inside 100 Notes Door Open Organ sequence Advent Slalom Race win Race lose Jigsaw magic Oh dear Up Down Shamen Hut Jig 10 Carpet Squirrel Hornet Treetop Turtle Shell House Summer House Autumn Out Buildings Hornet 2 Cabins Rain Jigsaw Open Jigsaw Close Witch 1 Witch 2 Witch 3 Witch 4 Witch 5 Mr Vile Bridge Turbo Talon Trot Long legs Witch 6 Boggy sad Boggy happy Quit Witch 7 Witch 8 Spring Squirrel attic Lights Box Witch 9 Open up Puzzle complete Xmas tree Puzzle in Lite tune Open extra Ouija Wozza Intro Gnawty Banjo's Pad Pause tune Unnamed piece Unnamed piece Unnamed piece Unnamed piece glseq.c : glSeqMake :(CS) : Sequence bank '.ctl' file glseq.c : glSeqMake :(CS) : Sequence file header glseq.c : glSeqMake :(CS) : Sequence file data glseq.c : glSeqMake :(CS) : List of pointers to sequences in RAM glseq.c : glSeqInsert :(CS) : Load midi sequence into RAM before playing glseq.c N < MAXSEQS glseq.c 0 glseq.c 0 glseq.c 0 glseq.c N < MAXSEQS glseq.c 0 glseq.c seqp == glSeqGetCSPPlayer(0) glseqfade.c =ˆ‰=ˆ‰ MQ_IS_EMPTY(Queue) glpack.c sizeOut < (MAX_GAME_SAVE_SIZE) glpack.c sizeOut % BLOCKSIZE == 0 glpack.c (position >= 0) && (position < MAX_GAME_SAVE_FILES) glpack.c glpack.c : glPackSave :(RL) : DataOut glpack.c sizeIn < (MAX_GAME_SAVE_SIZE) glpack.c sizeIn % BLOCKSIZE == 0 glpack.c (position >= 0) && (position < MAX_GAME_SAVE_FILES) glpack.c glpack.c : glPackSave :(RL) : DataIn glpack.c glpack.c %02X core coshow whale haunted desert beach jungle swamp ship snow tree Recommend setting basic ARENASIZE (in 'glmempjm.c') to %d or less Execution stopped. (overlay > glOverlayNull) && (overlay < glOverlayLastOvl) gloverlay.c numOvls == glOverlayLastOvl gloverlay.c +=============+ | Memory Info | +=============+ ARENASIZE = %d (basic) + %d (extra gfx/mtx/vtx) = %d bytes EDITOR ARENA = %d bytes CODE ALLOWANCE = %d bytes estimated Segment: 'core' START END SIZE (decimal) RAM: %8x %8x %8d minus (ARENASIZE + ED_ARENASIZE) = %d ROM: %8x %8x %8d TEXT: %8x %8x %8d DATA: %8x %8x %8d BSS: %8x %8x %8d minus (ARENASIZE + ED_ARENASIZE) = %d Segment: 'zbuffer' START END SIZE (decimal) RAM: %8x %8x %8d ROM: %8x %8x %8d TEXT: (No text) DATA: (No data) BSS: %8x %8x %8d Segment: 'gs' START END SIZE (decimal) RAM: %8x %8x %8d ROM: %8x %8x %8d TEXT: %8x %8x %8d DATA: %8x %8x %8d BSS: %8x %8x %8d staticSegmentStart = %8x +----------+ | Overlays | +----------+ Overlay #%d: '%s' START END SIZE (decimal) RAM: %8x %8x %8d (Largest overlay) ROM: %8x %8x %8d TEXT: %8x %8x %8d TEXT: (No text) DATA: %8x %8x %8d DATA: (No data) BSS: %8x %8x %8d BSS: (No bss) Total saving from using overlays is %d bytes Remaining code space = %d bytes (includes an estimated development code allowance of %d bytes) Remaining code space = %d bytes (no code allowance) *** CODE OVERLAP! *** Software overlap of %d bytes! BACK BACK# BASE BASE# CENT LF_ANKLE LF_ANKLE# LF_ELBOW LF_ELBOW# LF_HIP LF_HIP# LF_KNEE LF_KNEE# LF_SHOULDER LF_SHOULDER# LF_WRIST LF_WRIST# NECK NECK# RT_ANKLE RT_ANKLE# RT_ELBOW RT_ELBOW# RT_HIP RT_HIP# RT_KNEE RT_KNEE# RT_SHOULDER RT_SHOULDER# RT_WRIST RT_WRIST# TAIL_A TAIL_B TAIL_C LF_BTOES LF_TOES RT_BTOES RT_TOES TAIL TAIL_TIP HEAD GEN_A GEN_B GEN_C GEN_D GEN_E GEN_F GEN_G GEN_H GEN_I GEN_J GEN_K GEN_L GEN_M GEN_N GEN_O GEN_P GEN_Q GEN_R GEN_S GEN_T GEN_U GEN_V GEN_W GEN_X GEN_Y GEN_Z GEN_AA GEN_BB GEN_CC GEN_DD GEN_EE GEN_FF GEN_GG GEN_HH GEN_II GEN_JJ GEN_KK GEN_LL GEN_MM GEN_NN GEN_OO GEN_PP GEN_QQ GEN_RR GEN_SS GEN_TT GEN_UU GEN_VV GEN_WW GEN_XX GEN_YY GEN_ZZ LF_HIPA LF_KNEEA LF_ANKLEA RT_HIPA RT_KNEEA RT_ANKLEA LF_WINGA LF_WINGB LF_WINGC RT_WINGA RT_WINGB RT_WINGC BASEA BACKA NECKA RT_ANKLEB LF_ANKLEB RT_KNEEB LF_KNEEB RT_ANKLEC LF_ANKLEC dbJointNone Rx Ry Rz Sx Sy Sz Tx Ty Tz mask >= 0 && mask < glAnim2MaskMax gljoint.c Top - Base > 0 glmatrix.c glMatrix: --------------------------------- glMatrix: [%d] %8.2f %8.2f Top - Base < Max - 1 glmatrix.c Top - Base < Max - 1 glmatrix.c Top - Base < Max - 1 glmatrix.c zs==ze glzbuff.c f0s==f0e glzbuff.c f1s==f1e glzbuff.c zs!=f0s glzbuff.c zs!=f1s glzbuff.c glrcp.c glrcp.c glrcp.c glrcp.c glrcp.c glrcp.c glrcp.c : glRcpReset :(MB) : GfxBase[0] glrcp.c : glRcpReset :(MB) : GfxBase[1] glrcp.c : glRcpReset :(MB) : MtxBase[0] glrcp.c : glRcpReset :(MB) : MtxBase[1] glrcp.c : glRcpReset :(MB) : VtxBase[0] glrcp.c : glRcpReset :(MB) : VtxBase[1] glmempjm.c : meOutOfMemory(): Size requested %d Bytes glMem: Out of memory (ERROR %d) : *** %s *** 0 glmempjm.c %7d (%2d%%) %s%6d byt: %s MEMCHECK: Previous glMemTotalTrace in '%s' on line %d MEMCHECK: glMemTotalTrace * ERROR * in '%s' on line %d See programmer's help comment in glMemTotal (glmempjm.c) for more info. Program will now hang. (size & 0x3) == 0 glmempjm.c glmempjm.c glmempjm.c glMemTotal: %s corrupted (%p) for Block @ %p glMemTotal: (%p->%s)->%s does NOT equal %p region %p, %s %p, %s->%s %p Panic dumping has reached a nested level of %d, and has given up. (PJM) 24/11/97 *********** ** ERROR ** glMemAlloc(): PANIC DUMPING FAILED: *********** %7d bytes for '%s' *********** MemAlloc:+ glMemFree: Why are you trying to Free up a free region??? (@ %p) glMemFree was called from line %d in file %s. MemFree :- object glmempjm.c *object glmempjm.c Trash.top < Trash.min + TrashMax glmempjm.c glmempjm.c glmempjm.c ----glMemPrintf (No VDU Dump)--------(PJM 16/12/97) glmempjm.c glmempjm.c TIDIED GRAPHIC: Being Delay-Dumped by glMemTidyUpMemGrafix (PJM) TIDIED QUICK DATA: Being Delay-Dumped by glMemTidiedQuick (PJM) CSUM CHANGE:%s: @ %p to %p, %s CSUM CHANGE:%s: @ %p to %p *** FREE/BOOKMARK *** CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c CHECKmemPOINTER / glMemCheckPointerValid() failed in file '%s' on line %d 0 glmempjm.c slot >= 0 && slot < NUM_SLOTS gleeprom.c block >= 0 && block < SLOT_BLOCKS gleeprom.c data != NULL gleeprom.c nBlocks <= (SLOT_BLOCKS-block) gleeprom.c MQ_IS_EMPTY(Queue2) gleeprom.c slot >= 0 && slot < NUM_SLOTS gleeprom.c block >= 0 && block < SLOT_BLOCKS gleeprom.c data != NULL gleeprom.c nBlocks <= (SLOT_BLOCKS-block) gleeprom.c MQ_IS_EMPTY(Queue2) gleeprom.c %s RARE_FAT Unable to allocate space for the FAT Printing FAT file no. = %d sblock = %d eblock = %d RARE_FAT R %d (%1.4f) %d of %d (%1.4f) Playback finished Playback finished Recording terminated Recording terminated LBA %d to %d Disk is finished %s Disk is finished %s %s Start game Record Playback Help RARE DEBUG RARE DEBUG %s %s Status Frame Begin playback BREAKPOINTS BREAKPOINTS %s %s OFF ON %d/%d LIST OF RECORDINGS LIST OF RECORDINGS NO. FRAMES START END %d. %d %d %d Press Z to delete all recordings Press Z to clear FAT more more The disk is full The file allocation table has been corrupted The file allocation table is full CONTROLLER FUNCTIONS CONTROLLER FUNCTIONS During playback L TRIG + R TRIG stop L TRIG + START pause pause + START resume pause + Z TRIG frame advance During recording L TRIG + R TRIG stop Error initialising the leo manager joy buf 0 = %x joy buf 1 = %x Error allocating the joypad buffer Error allocating the eeprom buffer %d blocks written DD stuff mem ddtrace.c A read error has occurred error is %x A write error has occurred error is %x comusic.c : coMusicMake :(JS) : W - Seq. List W comusic.c comusic.c === Status of fade indexes === %s%s %sVol %1d = %5d %s(%1d): %5d %6d %sNo tune on %d. dsIndexIsUsed(W->fadeindex, 1) comusic.c W comusic.c seq>=0 comusic.c W comusic.c seq >= 0 comusic.c W comusic.c seq >= 0 comusic.c (W) && (rate>0) && (rate<32768) comusic.c W comusic.c seq >= 0 comusic.c W comusic.c seq>=0 comusic.c W comusic.c W comusic.c W comusic.c W comusic.c comusic.c: Trying to lock a non-existent tune (%d) W comusic.c comusic.c comusic.c comusic.c (W) && (rate>0) && (rate<32768) comusic.c coMusic: Warning! You're trying to fade a non-existent tune (%d) to nothing? W comusic.c CPU RCP HZ K ( K) seqp->state != AL_PLAYING n_csplayer.c seqp->state == AL_STOPPED n_csplayer.c FALSE n_csplayer.c FALSE n_csplayer.c seqp->bank != NULL n_csplayer.c
The Banjo-Kazooie series
| |
---|---|
Nintendo 64 | Banjo-Kazooie (Prototype) • Banjo-Tooie |
Game Boy Advance | Grunty's Revenge (Prototypes) • Banjo-Pilot (Prototypes) |
Xbox 360 | Banjo-Kazooie • Banjo-Tooie • Nuts & Bolts (Prototype) |
Related | |
Windows, Mac OS X, Linux, Nintendo Switch | Yooka-Laylee (Prototype) |