diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/UsedProfileAndSpriteList.txt | 160 | ||||
-rw-r--r-- | tools/kamek.py | 35 |
2 files changed, 193 insertions, 2 deletions
diff --git a/tools/UsedProfileAndSpriteList.txt b/tools/UsedProfileAndSpriteList.txt new file mode 100644 index 0000000..8011339 --- /dev/null +++ b/tools/UsedProfileAndSpriteList.txt @@ -0,0 +1,160 @@ +[Commented] 210 : TARZAN_ROPE : Pengi +--- : MOVIE : Cut Scene +--- : WM_BOARD : Shop Item +--- : WM_DANCE_PAKKUN : HUD +--- : WM_GHOST : Star Coin Screen +--- : WM_MAP : Map +--- : WM_PAKKUN : Captain Bowser: Clown Shot +--- : WM_PLAYER : Player +--- : WM_SINKSHIP : Song Prize +--- : WM_SMALLCLOUD : Bridge Bowser: Dropped Bomb +--- : WM_TOGEZO : Shop +--- : WORLD_CAMERA : World Camera +--- : WORLD_MAP : Koopatlas + 10 : WM_ANCHOR : Captain Bowser: Koopa Throw + 11 : WM_KOOPA_CASTLE : Make Your Own + 12 : WM_KURIBO : Challenge Star + 13 : JR_CLOWN_FOR_PLAYER : Captain Bowser: Clown Car + 14 : WM_ANTLION : Captain Bowser: Koopa Flamethrower + 15 : WM_KILLERBULLET : Sing Along + 16 : WM_CLOUD : Bridge Bowser: Bomb Drop + 17 : WM_KILLER : Song Block + 18 : WM_BOSS_IGGY : Bone Piece + 19 : WM_PUKU : Samurshai + 22 : WM_KINOKO_STAR : Pumpkin Goomba + 49 : AC_LIFT_SEESAW : Fake Star Coin + 79 : EN_HELPOS : Event Looper + 88 : EN_BOYON : Sprite Spawner + 89 : EN_REMOCON_TORIMOCHI : Sprite Swapper Timed +107 : EN_LIFT_ROTATION_HALF : Message Box Manager +152 : EN_BLUR : Message Block +169 : EN_SLIP_PENGUIN : Magic Platform +183 : EN_TARZANROPE : Meteor +210 : TARZAN_ROPE : Topman +213 : BRANCH : Captain Bowser +239 : MIST_INTERMITTENT : Event Block +244 : RIVER_MGR : Line God +246 : TAG_THUNDER : Level Special +250 : KAWANAGARE : Electric Line +251 : SLOW_QUICK_TAG : Topman Boss +273 : WM_KINOBALLOON : Palace Activator +282 : EN_WALLINSECT : Mr Sun +283 : WALLINSECT_MGR : Fuzzy Bear +290 : EN_IWAO : Ramboo +302 : EN_GAKE_NOKO : Wrench +322 : EN_GHOST_JUGEM : Thwomp Boss +324 : SHIP_WINDOW : Podouble +332 : LIFT_TORIDE_ROLL : Effect Video +350 : DUMMY_DOOR_PARENT : Fire Laser +351 : DUMMY_DOOR_CHILD : Shy Guy +410 : AC_BLOCK_GROUP : Mega Goomba +XXX : AC_LIFT_ICE_SPRING : Balboa Wrench + + + +-- All Replaced Profiles -- +AC_BLOCK_GROUP +AC_LIFT_ICE_SPRING +AC_LIFT_SEESAW +BRANCH +DUMMY_DOOR_CHILD +DUMMY_DOOR_PARENT +EN_BLUR +EN_BOYON +EN_GAKE_NOKO +EN_GHOST_JUGEM +EN_HELPOS +EN_IWAO +EN_LIFT_ROTATION_HALF +EN_REMOCON_TORIMOCHI +EN_SLIP_PENGUIN +EN_TARZANROPE +EN_WALLINSECT +JR_CLOWN_FOR_PLAYER +KAWANAGARE +LIFT_TORIDE_ROLL +MIST_INTERMITTENT +MOVIE +RIVER_MGR +SHIP_WINDOW +SLOW_QUICK_TAG +TAG_THUNDER +TARZAN_ROPE +WALLINSECT_MGR +WM_ANCHOR +WM_ANTLION +WM_BOARD +WM_BOSS_IGGY +WM_CLOUD +WM_DANCE_PAKKUN +WM_GHOST +WM_KILLER +WM_KILLERBULLET +WM_KINOBALLOON +WM_KINOKO_STAR +WM_KOOPA_CASTLE +WM_KURIBO +WM_MAP +WM_PAKKUN +WM_PLAYER +WM_PUKU +WM_PUKU +WM_SINKSHIP +WM_SMALLCLOUD +WM_TOGEZO +WORLD_CAMERA +WORLD_MAP + + + +-- World Map Processes Free for Use: -- +WM_ANTLION_MNG +WM_BOSS_BASE +WM_BOSS_KAMECK +WM_BOSS_LARRY +WM_BOSS_LEMMY +WM_BOSS_LUDWIG +WM_BOSS_MORTON +WM_BOSS_ROY +WM_BOSS_WENDY +WM_BROS +WM_BUBBLE +WM_CANNON +WM_CASTLE +WM_COURSE +WM_CS_SEQ_MNG +WM_CS_W3_PALM +WM_DIRECTOR +WM_DOKAN +WM_DOKANROUTE +WM_GRID +WM_HANACHAN +WM_IBARA +WM_ISLAND +WM_JUGEM +WM_KINOKO_1UP +WM_KINOKO_BASE +WM_KINOKO_RED +WM_KINOPIO +WM_KOOPAJR +WM_KOOPASHIP +WM_MANTA +WM_NOTE +WM_PAKKUNHEAD +WM_PEACH +WM_PEACH_CASTLE +WM_SANDPILLAR +WM_START +WM_STOP +WM_SUBPLAYER +WM_SURRENDER +WM_SWITCH +WM_TERESA +WM_TEST +WM_TEST2 +WM_TORIDE +WM_TOWER +WM_TREASURESHIP +WM_YOGANPILLAR +WORLD_SELECT +WORLD_SELECT_GUIDE diff --git a/tools/kamek.py b/tools/kamek.py index ee67a5a..a82740f 100644 --- a/tools/kamek.py +++ b/tools/kamek.py @@ -35,10 +35,11 @@ show_cmd = False delete_temp = True override_config_file = None only_build = None +fast_hack = False def parse_cmd_options(): - global use_rels, use_mw, use_wine, show_cmd, delete_temp, only_build + global use_rels, use_mw, use_wine, show_cmd, delete_temp, only_build, fast_hack global override_config_file, gcc_type, gcc_path, mw_path if '--no-rels' in sys.argv: @@ -56,7 +57,9 @@ def parse_cmd_options(): if '--keep-temp' in sys.argv: delete_temp = False - + if '--fast-hack' in sys.argv: + fast_hack = True + only_build = [] @@ -408,6 +411,11 @@ class KamekBuilder(object): self._moduleFiles = [] + + if fast_hack: + fast_cpp_path = os.path.join(self._configTempDir, 'fasthack.cpp') + fast_cpp = open(fast_cpp_path, 'w') + for m in self.project.modules: for normal_sourcefile in m.data['source_files']: print_debug('Compiling %s : %s' % (m.moduleName, normal_sourcefile)) @@ -421,6 +429,11 @@ class KamekBuilder(object): # todo: better extension detection if sourcefile.endswith('.s') or sourcefile.endswith('.S'): command = as_command + elif sourcefile.endswith('.cpp') and fast_hack: + fast_cpp.write('//\n// %s\n//\n\n' % sourcefile) + fast_cpp.write(open(sourcefile, 'r').read()) + fast_cpp.write('\n') + continue else: command = cc_command @@ -440,6 +453,24 @@ class KamekBuilder(object): self._moduleFiles.append(objfile) + if fast_hack: + fast_cpp.close() + + print_debug('Fast compilation!!') + objfile = os.path.join(self._configTempDir, 'fasthack.o') + + new_command = cc_command + ['-c', '-o', objfile, fast_cpp_path] + if show_cmd: + print_debug(new_command) + + errorVal = subprocess.call(new_command) + if errorVal != 0: + print 'BUILD FAILED!' + print 'compiler returned %d - an error occurred while compiling the fast hack' % errorVal + sys.exit(1) + + self._moduleFiles.append(objfile) + print_debug('Compilation complete') |