Turok: Battle of the Bionosaurs
Turok: Battle of the Bionosaurs |
---|
Also known as: Turok (JP) This game has uncompiled source code. |
A port of Turok: Dinosaur Hunter in which unlike the other Turok Game Boy Color games remains faithful to its N64 counterpart.
Contents
Level Select
Enter ZYDRTRKLVL as a password, then during gameplay, pause and press A + B. Press Left or Right to choose a level, and A, B, or Start to go to the chosen level.
Free-Movement Mode
Enter ZYDRTRKBRD as a password, then during gameplay, hold Select and press A. Use the D-Pad to move Turok around and hold Select, then press A again to place him.
Dedication Screen
Enter CGRZYDLYNY as a password, the "BAD PASSWORD" will be displayed. Hold B + Up + Right and press Start, the dedication to Carol, the same as in some other games of the same developers will appear.
Sound Test
At the title screen, press Up once, then one more and hold it. The cursor must point to the "START" option. Press Start to access the Sound Test mode instead of the starting new game. Use A / B / Left / Right to change the music/fx numbers, or Up / Down / Select to select menu items. Press Start to play music or exit this menu.
Debug Leftovers
Memory Watch
Use the Game Genie code 489-16A-D5F to re-enable the debug Memory Watch function. To use it, enter the Level Select cheat, and press A + B on pause. Then use Up / Down to change the current address, hold A or B additionally to increase address by 0x10 or 0x100 correspondingly.
Frame Advance
Use the Game Genie codes 009-1CA-80A+009-1DA-D55 (for the US version) to re-enable the frame advance mode instead of the pause mode. Press Start to toggle this mode on or off. When on, press Select to advance the game frame by frame.
Unused Text
There is a lot of garbage data, which is random data from the memory of the PC where the game is compiled. Different versions of the same game may have different data. This is a very common thing for at least Bit Managers' development tools. Sometimes, inside the garbage you may find development-related text or something more interesting.
In the Japanese version, the first chunk of garbage starts at 0x33E0, but has text sitting at 0x3889. This is portions of the OBJ data files for compilator or debugger with lists of labels. The same area of the US version contains some early version of the level data block from BANK1 of its ROM. Level data is the same, but offsets to chunks are shifted, so it just was placed in a different location previously. The following is a clean list of the labels, extracted from the data structures in this garbage data.
FPOLLO4 MIN_X_HID_RUINAS CAMPAIGNER_ENERGY CondorEndStatus YDOWNENEIN DURMIN1 HeroAttLoaded LevelAliveTab DumpWeapon BulletDown TROMPIEZA_LEV LIMITE_YUPSPRINT MIN_Y_HID_RUINAS PersoFlags_HIDDEN LCDCINT DURMIN2 ObjHeroX BlockCNT1 CARACTERISTICA MAX_X_HID_RUINAS DURMAX1 DURMIN3 AGUAMIN ObjHeroY CommonRexEnergy ALIENW_BUL ROCKET_AMM POSMARK_BONUS BNK_POSTAB COLBUFH DURMAX2 TiempoGenSuelos BullFusion BNK_ENEPOS TXTFLAG_Mark CENTROYCON COPY_CARAS DURMAX3 AGUAMAX W_GUN2_FUSION LIM_ABA ALTURA_COL CommonCampLIM_DER TIEMPO_HUGO_HA_CAIDO HUGO_SALTA TalkParX HeroApoY LIVETAB HeroTalkedCnt TalkParY COMP_VARS_LEN TITULSBUFF DURMIN_OBJ HeroXAnt GameTime SaveData ALIENW_GOT MINDETECCIONX_BOLAOBJETO PALSP_MARK BitBITSCR_Up LockRama PuzzleTimeSpeed WORLD_SPRSBNK WORLD_PSEUDOS HeroYAnt JumpLittle OBJECTS Error RoadCircuitLenEasy CommonMantisLIM_IZQ W_PARTICLE BullPistol ROCKET_BUL MINDETECCIONY_BOLAOBJETO Psize DiffEasy PuertoTalk DURMAX_OBJ CrisFlag OffXDown MAXDETECCIONX_BOLAOBJETO LIFT_ENTER SPECIAL_HIDDEN Cha LIVE_NoReapear HeroEsperandoPacha DECSCRX VelDecOxigeno DataSW5A1A CommonMantisOnFlag OffYDown MAXDETECCIONY_BOLAOBJETO RUT_CHQ_DESPL MAXSPRSGRF MAPSPR_BNK PAL0 AGABLALEMIN SnowManSpeedY DataSW5A1B MAX_BULLET OffXFrnt PAL1 FlagDoor HeroAttReload DataSW5A1C FUSION_AMM OffYFrnt BNK_VBLEXT OBJECTS_TABLE_LEN TROMPIEZA_RUN MAX_CHR_GG WIND_RIGHT MAX_WEAPON XLEFTSPRIN RoadCars AGABLALEMAX LevelTab DataSW5A1D CommonCampCnt PIEDRAS_LEVEL1 CONDOR_DERECHA Che RoadPixY CodeMap3D PosXSaco DataSW6D
The second garbage chunk in the Japanese version is at 0x7B42.
ASHOTGUN_GOT SnowDummy BLAMIN SuperGameBoy HeroHit CommonRexOff FINALPOSX AguaVRAM PuzzleFinished FLAG_SIZE CommonRexLIM_DER TIEMPO_VAPOR BLAMAX LADMIN FLG_SIZEB TalkSeq MaxAnimacion TIME_PIEDRAS_MEDIUM JumpLevelOne VER_64 MonjeOn PlatCnt ENELEN UPOUTFLAG VARSINCRO RoadSpeedTxt LADMAX PuzzleLastAuto V01 SnowBallWait CommonRexGrf ScrollSpeedX MuseoAlbertTalked AguaAdd1 ProgramCounter V11 MULDEA ANCHOP B_ATTACK_RELEASE KW_ATTACK W_GUN1_PULSE AguaAdd2 DoorCnt MaxEnergyVar HeroDoorNextLevel CounterPMira FlgGenSaco GRFBNK MARC_PIEZ YETI_DERE PresentFLG LIMX_DERF AguaAdd3 DiffiOnOff FLAGDOOR_BAJA HEROAL AutoTbl RoadCarLen HeroCreeping OBJRAM LIMITE_XRIGHTENEINT WIND_LEFT BIT_RIGHT ACode END_HOT_VARS DMASUB CHTWeapons NORMAL_CONDOR_SPEED FUSIL_AMM LCDC_WinBnk MAXENE BITSCR_Down AutoCnt WORLD_TAB SnowBallJump DOOR_MASK HUGO_SEAGACHA OffsetX PosXHeadSnowMan OldRoadFas TMP0cred AddGrenade GrenadeFront ALTURA_DE_PIE_HEROE SELECT OffsetY
The same place in the US version is filled with this garbage:
MURIENDO VDP_DATA HIGHC MAX_SPEEDY_GRENADE SAVE_CHK TreatCrouch HeroInRam PreviousWorld CondorPosMP1 DTMP0 DO_SCROLLXL CampaignerDead POSMARK_KEY BNK_MISC DTMP1 DO_SCROLLYL HeroAttAn CAIDA_PIEDRA BIT_REAP LevelTab_Level BullMinigun BNK_WEAP PasoAPaso DTMP2 TabDataPiedros CONDOR_MURO FIREA P_ATTACK DTMP3 NUM_PIEZAS_WIN FIREB STONED_JUMP SaveHighY ROW_HEAD DTMP4 callfarHL LIMITE_XLEFTENEINT MAXSLOPE BIT_LEFT FXSPLASH Piedras3Scroll PuzzleCounter Energy CheatMode DTMP5 MusicNumber Weapon DERECHA_PANTALLA_HEROE WT_Select SWIM_SPLASH SHOTGUN_BUL TalkTemWindSpd DTMP6 SPRITESA DO_SCROLLXR CLIMB_UP TIME_AGARRED_SWING H_Message AguaROM Inmune DTMP7 DO_SCROLLYR LASTDOWN SnowBallSpeedY WIDEC SELWORLD YUPENEIN DTMP8 RANDH PointToTray TreatAttackTurok FINAL_PANTALLAX AgaAdjRightX SPRS_8X8 ObjHeroLastJoy NumeroSacos DelayShoots STONED_STGU FXPUERTA HeroControl POS_GAP_CONDORPSEUDOS NUMENE_ORGMOVIBLES HUGO_MUEREBUCEA FXMUERTE
Data between 0xADE8 and 0xC000 in the Japanese version is a partial binary bank of the very early version of BANK1 for the other Bit Managers' game Otto's Ottifanten: Baby Bruno's Nightmare. It contains the early version of the "Dedication" cheat, which is only present in the early proto, but all menus are the same as in the final game, except there are no strings for other languages, scenario texts and other evidences of the game name itself. However, text and code for the Language selection menu is present in this data chunk. Offsets in this code matches the actual data offsets in BANK1, but shifted to 0x2000 higher.
The same area of the US version filled mostly with a copy of the BANK3 data and code with just a few additional garbage leftovers.
HeroClimbCnt1 LastHeroXR RoadCarNum WIDESP WORLD_OBJECTSBNK
And finally, the Japanese version has a lot of binary data with sources, it seems the internal structures of the compilator as well.
PSEUDOS ; LDBCL WORLD_LENPSEUDOS ld bc,MAXLENPSEUDOS ;LALALA CALLX UNPACK ; LD A,E ; SUB PSEUDOS&BYTE ; STAL WORLD_LENPSEUDOS ; LD A,D ; SBC (PSEUDOS>>8)&BYTE ; STAL WORLD_LENPSEUDOS+1 ;LALALA ;Mete los bloques del mapeado en la pantalla... LD HL,#9800 LD DE,#9801 SUB A LD (HL),A LD BC,#9C00-#9800-1 ZLDIR ldal Level cpx W8c1 bne $noloadrex ld hl,#8800+(NUM_PIEZAS_MARCADOR)*#10 ld de,#8800+(NUM_PIEZAS_MARCADOR)*#10+1 ld bc,#10-1 ld (hl),0 zldir StBnkLenx REXGRF ld de,#8800+(NUM_PIEZAS_MARCADOR+1)*#10 call UNPACK ; Clears T-REX buffer ld hl,#9c00 ld b,32;10 $cline ld c,32 xor a $cbyte ldhlia dec c bne $cbyte dec b bne $cline $noloadrex LDAL WORLD_GRAFICSBNK SetBank LD DE,#8800 LDAL PIEZAS_MARCADOR LD L,A LD H,0 REPT 4 ADD HL,HL ENDR ADD HL,DE LD E,L LD D,H LDHLL WORLD_GRAFICS LD BC,512 ;Tama¤o por defecto CALLX UNPACK ;Descomprime los gr ficos... ;*** Entra en DE con por donde se quedo el compresor PUSH DE CALL INTERCHANGE ;Intercambia las posiciones de las piezas ;de background ldal Level cmp W8c1 bne $nomapREX StBnkLenx REXMP1 ld de,MAPREX callx UNPACK ld hl,MAPREX ld bc,ce ret nc ldal HeroSwim and a bne $kwater ldal HeroCreeping and a bne $kcreep ld de,#10 bra $kt $kcreep ld de,#18 bra $kt $kwater ld de,#18 bra $kt $kt ldal HeroLastJoy bit RIGHT,a bne $nn ld a,e cpl ld e,a ld a,d cpl ld d,a inc de $nn ld a,BullKnife ldhlia lda HeroY ldhlia lda HeroY+1 ldhlia lda HeroX add e ldhlia lda HeroX+1 adc d ldhlia ld a,#0a ; Time on ldhlia ret AddGrenade: ; C=Type of bullet ; DE=Main speed of bullet ld hl,GrenadeIniTab call IniBullCommon ret nc ld b,0 ; BC=Speed Y ; DE=Speed X call SaveBullData ret AddBullet: ; C=Type of bullet ; DE=Main speed of bullet ld hl,BulletIniTab call IniBullCommon ret nc call SaveBullData ret IniBullCommon: STHL var1 ldal WeapFX rst #10 call FindBullPlace ret nc ; Full! ld a,c ldhlia push hl LDHL var1 call AdjBullData pop hl scf ret AdjBullData: ldal HeroJump and a beq $floor bra $ok ; In air, only front! $floor ldal HeroAttAn cmp AnimShtFrnt beq $ok inc hl inc hl cmp AnimShtUp beq $ok inc hl inc hl cmp AnimShtTop beq $ok inc hl inc hl cmp AnimShtDwn beq $ok ret $ok ldahli ld h,(hl) ld l,a jp (hl) GrenadeIniTab: dw GrenadeFront,GrenadeUp,GrenadeTop,GrenadeDown GrenadeFront: ld c,#10+#80 ret GrenadeUp: ld c,#60+#80 ret GrenadeTop: ld de,1 ld c,#60+#80 ret GrenadeDown: ld c,+#28 ret BulletIniTab: dw BulletFront,BulletUp,BulletTop,BulletDown BulletFront: ld bc,0 ret BulletUp: ld a,e cpl ld c,a ld a,d cpl ld b,a inc bc ret BulletTop: ld a,e cpl ld c,a ld a,d cpl ld b,a inc bc ld de,0 ret BulletDown: ld c,e ld b,d ret FindBullPlace: ld hl,BULTABLE ld b,MAX_BUL $search ld a,(hl) cmp #ff beq $found ADDHL LENBT dec b bne $search and a ret $found scf ret ; No, Bow, Pis, Gu1, Gu2 ; No, Bow, Pis, Gu1, Gu2 OffXUp: dw 0, 14, 16, 18, 18 OffYUp: dw 0, -28, -32, -26, -26 ; No, Bow, Pis, Gu1, Gu2 OffXTop: dw 0, 2, -2, -1, 0 OffYTop: dw 0, -32, -40, -32, -32 ; No, Bow, Pis, Gu1, Gu2 OffYDown: dw 0, -8, -16, -16, -4 SaveBullData: ldal HeroJump and a beq $floor bra $front ; In air, only front! $floor ldal HeroAttAn cmp AnimShtFrnt beq $front cmp AnimShtUp beq $up cmp AnimShtTop beq $top cmp AnimShtDwn beq $down xor a sta var1 sta var1+1 sta var2 sta var2+1 bra $put $front stw var1,OffYFrnt stw var2,OffXFrnt bra $put $up stw var1,OffYUp stw var2,OffXUp bra $put $top stw var1,OffYTop stw var2,OffXTop bra $put stw var2,OffXDown $put push h11*5+10*5*4",0 lda var1 ld e,a $bytere
The Turok series
| |
---|---|
Nintendo 64 | Turok: Dinosaur Hunter (Prototype) • Turok 2: Seeds of Evil (Prototype) • Turok: Rage Wars • Turok 3: Shadow of Oblivion (Prototypes) |
Game Boy (Color) | Turok: Battle of the Bionosaurs • Turok 2: Seeds of Evil • Turok: Rage Wars • Turok 3: Shadow of Oblivion |
Game Boy Advance | Turok: Evolution |
Windows | Turok: Evolution • Turok • Turok: Dinosaur Hunter (2015) • Turok 2: Seeds of Evil (2017) • Turok 3: Shadow of Oblivion (2023) |
See Also | |
DreamWorks |
- Pages missing developer references
- Games developed by Bit Managers
- Pages missing publisher references
- Games published by Acclaim Entertainment
- Games published by Starfish
- Game Boy games
- Pages missing date references
- Games released in 1997
- Games released in December
- Games released on December 1
- Games with uncompiled source code
- Games with hidden developer messages
- Games with hidden development-related text
- Games with debugging functions
- Games with hidden sound tests
- Games with hidden level selects
- Turok series
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Games > Games by content > Games with debugging functions
Games > Games by content > Games with hidden developer messages
Games > Games by content > Games with hidden development-related text
Games > Games by content > Games with hidden level selects
Games > Games by content > Games with hidden sound tests
Games > Games by content > Games with uncompiled source code
Games > Games by developer > Games developed by Bit Managers
Games > Games by platform
Games > Games by publisher > Games published by Starfish
Games > Games by publisher > Games published by Throwback Entertainment > Games published by Acclaim Entertainment
Games > Games by release date > Games released in 1997
Games > Games by release date > Games released in December
Games > Games by release date > Games released in December > Games released on December 1
Games > Games by series > Turok series
The Cutting Room Floor > Unimportant Awards > Game Boy games