Jump to content

OoT source code listing


Twili
 Share

Recommended Posts

The following is a listing of all C files referenced in every version of OoT, as far as I could see.

 

Before "code:"

 

 

idle.cz_std_dma.cz_locale.c

 

Within "code:"

 

 

sprintf.cz_en_a_keep.cz_en_item00.cz_eff_blure.cz_eff_shield_particle.cz_eff_spark.cz_eff_ss_dead.cz_effect_soft_sprite.cz_effect_soft_sprite_old_init.cflg_set.cz_DLF.cz_actor.cz_cheap_proc.cz_bgcheck.cz_camera.cz_collision_check.cz_debug.cz_debug_display.cz_demo.cz_draw.cz_elf_message.cz_fcurve_data_skelanime.cz_horse.cz_jpeg.cz_kanfont.cz_kankyo.cz_lifemeter.cz_lights.cz_map_mark.cz_moji.cz_onepointdemo.cz_map_exp.cz_parameter.cz_player_lib.cz_prenmi.cz_rcp.cz_room.cz_sample.cz_scene.cz_scene_table.cz_skelanime.cz_skin.cz_skin_awb.cz_sram.cz_view.cz_vimode.cz_vismono.cz_vr_box.cz_vr_box_draw.cz_fbdemo.cdb_camera.cz_kaleido_manager.cz_kaleido_scope_call.cz_play.cPreRender.cgame.cgamealloc.cgraph.clistalloc.cmain.cpadmgr.csched.cspeed_meter.csys_cfb.csys_matrix.cirqmgr.cfault.cloadfragment2.cmtxuty-cvt.cz_message_PAL.cz_message.cz_construct.c

 

General overlays:

 

 

z_n64dd.c

z_title.cz_select.cz_file_nameset_PAL.cz_file_choose.cz_kaleido_collect.cz_kaleido_debug.cz_kaleido_equipment.cz_kaleido_item.cz_kaleido_map_PAL.cz_kaleido_scope_PAL.cz_lmap_mark.cz_player.cz_en_test.cz_arms_hook.cz_arrow_fire.cz_arrow_ice.cz_arrow_light.c

 

Backgrounds:

 

 

z_bg_bdan_switch.cz_bg_bombwall.cz_bg_bowl_wall.cz_bg_breakwall.cz_bg_dodoago.cz_bg_dy_yoseizo.cz_bg_ganon_otyuka.cz_bg_gate_shutter.cz_bg_gjyo_bridge.cz_bg_gnd_darkmeiro.cz_bg_gnd_firemeiro.cz_bg_gnd_iceblock.cz_bg_gnd_soulmeiro.cz_bg_haka.cz_bg_haka_gate.cz_bg_haka_ship.cz_bg_haka_tubo.cz_bg_haka_water.cz_bg_heavy_block.cz_bg_hidan_curtain.cz_bg_hidan_firewall.cz_bg_hidan_fwbig.cz_bg_hidan_hamstep.cz_bg_hidan_kousi.cz_bg_hidan_kowarerukabe.cz_bg_hidan_rock.cz_bg_hidan_rsekizou.cz_bg_hidan_sekizou.cz_bg_hidan_sima.cz_bg_ice_shelter.cz_bg_ingate.cz_bg_jya_1flift.cz_bg_jya_amishutter.cz_bg_jya_bigmirror.cz_bg_jya_block.cz_bg_jya_bombchuiwa.cz_bg_jya_bombiwa.cz_bg_jya_cobra.cz_bg_jya_ironobj.cz_bg_jya_kanaami.cz_bg_jya_megami.cz_bg_jya_zurerukabe.cz_bg_menkuri_eye.cz_bg_mizu_bwall.cz_bg_mizu_movebg.cz_bg_mizu_shutter.cz_bg_mizu_water.cz_bg_mjin.cz_bg_mori_bigst.cz_bg_mori_elevator.cz_bg_mori_hashigo.cz_bg_mori_hashira4.cz_bg_mori_hineri.cz_bg_mori_idomizu.cz_bg_mori_kaitenkabe.cz_bg_mori_rakkatenjo.cz_bg_po_event.cz_bg_po_syokudai.cz_bg_pushbox.cz_bg_spot00_hanebasi.cz_bg_spot01_fusya.cz_bg_spot01_idohashira.cz_bg_spot01_idomizu.cz_bg_spot01_idosoko.cz_bg_spot02_objects.cz_bg_spot03_taki.cz_bg_spot06_objects.cz_bg_spot07_taki.cz_bg_spot08_iceblock.cz_bg_spot09_obj.cz_bg_spot11_oasis.cz_bg_spot12_gate.cz_bg_spot12_saku.cz_bg_spot15_rrbox.cz_bg_spot15_saku.cz_bg_spot16_bombstone.cz_bg_spot16_doughnut.cz_bg_spot17_bakudankabe.cz_bg_spot17_funen.cz_bg_spot18_basket.cz_bg_spot18_obj.cz_bg_sst_floor.cz_bg_toki_hikari.cz_bg_toki_swd.cz_bg_treemouth.cz_bg_vb_sima.cz_bg_ydan_hasi.cz_bg_ydan_sp.cz_bg_zg.c

 

Bossess:

 

 

z_boss_dodongo.cz_boss_fd.cz_boss_fd2.cz_boss_ganon.cz_boss_ganon2.cz_boss_ganondrof.cz_boss_goma.cz_boss_mo.cz_boss_sst.cz_boss_tw.cz_boss_va.c

 

Demos:

 

 

z_demo_6k.cz_demo_du_inKenjyanomaDemo02.cz_demo_du.cz_demo_ec.cz_demo_effect.cz_demo_ext.cz_demo_geff.cz_demo_gj.cz_demo_go.cz_demo_gt_part1.cz_demo_gt_part2.cz_demo_gt_part3.cz_demo_gt_part4_1.cz_demo_gt_part4_2.cz_demo_gt_part4_3.cz_demo_gt_part5.cz_demo_gt_part6.cz_demo_ik_inArmer.cz_demo_ik_inFace.cz_demo_im_inKenjyanomaDemo02.cz_demo_im.cz_demo_kankyo.cz_demo_kekkai.cz_demo_sa_inKenjyanomaDemo02.cz_demo_sa.cz_demo_shd.cz_demo_tre_lgt.c

 

Doors and effects:

 

z_door_ana.cz_door_gerudo.cz_door_killer.cz_door_shutter.cz_door_warp1.c

z_efc_erupc.cz_eff_dust.cz_eff_ss_blast.cz_eff_ss_bomb.cz_eff_ss_bomb2.cz_eff_ss_bubble.cz_eff_ss_d_fire.cz_eff_ss_dead_db.cz_eff_ss_dead_dd.cz_eff_ss_dead_ds.cz_eff_ss_dt_bubble.cz_eff_ss_dust.cz_eff_en_fire.cz_eff_en_ice.cz_eff_ss_extra.cz_eff_fcircle.cz_eff_fhg_flash.cz_eff_fire_tail.cz_eff_ss_g_magma2.cz_eff_ss_g_ripple.cz_eff_ss_g_spk.cz_eff_hahen.cz_eff_ss_hitmark.cz_eff_ice_piece.cz_eff_ss_ice_smoke.cz_eff_k_fire.cz_eff_kakera.cz_eff_ss_kirakira.cz_eff_ss_lightning.cz_eff_ss_sibuki.cz_eff_ss_sibuki2.cz_eff_ss_stick.cz_eff_ss_stone1.cz_elf_msg.cz_elf_msg2.c

 

Enemies/NPCs/Uncategorized:

 

 

z_en_am.cz_en_ani.cz_en_anubice.cz_en_anubice_fire.cz_en_arrow.cz_en_ba.cz_en_bb.cz_en_bdfire.cz_en_bigokuta.cz_en_bili.cz_en_blkobj.cz_en_bom.cz_en_bom_bowl_man.cz_en_bom_chu.cz_en_bombf.cz_en_boom.cz_en_box.cz_en_bubble.cz_en_choo.cz_en_bw.cz_en_bx.cz_en_clear_tag.cz_en_cs.cz_en_daiku.cz_en_daiku_kakariko.cz_en_dekubaba.cz_en_dh.cz_en_diving_game.cz_en_dnt_jiji.cz_en_dnt_nomal.cz_en_dog.cz_en_door.cz_en_du.cz_en_dy_extra.cz_en_eiyer.cz_en_elf.cz_en_encount2.cz_en_ex_item.cz_en_ex_ruppy.cz_en_fd.cz_en_fd_fire.cz_en_fhg_fire.cz_en_fire_rock.cz_en_firefly.cz_en_sakana.cz_en_floormas.cz_en_fr.cz_en_fu.cz_en_fw.cz_en_fz.cz_en_g_switch.cz_en_ganon_mant.cz_en_ganon_organ.cz_en_gb.cz_en_ge1.cz_en_ge2.cz_en_ge3.cz_en_geldB.cz_en_girlA.cz_en_gm.cz_en_go.cz_en_go2_eff.cz_en_go2.cz_en_goma.cz_en_gr.cz_en_gs.cz_en_guest.cz_en_heishi2.cz_en_holl.cz_en_honotrap.cz_en_horse.cz_en_horse_game_check.cz_en_horse_link_child.cz_en_horse_normal.cz_en_hy.cz_en_ice_hono.cz_en_ik_inFight.cz_en_ik_inAwake.cz_en_ik_inConfrontion.cz_en_in.cz_en_mushi.cz_en_ishi.cz_en_jj.cz_en_jsjutan.cz_en_kanban.cz_en_karebaba.cz_en_ko.cz_en_kusa.cz_en_kz.cz_en_light.cz_en_m_thunder.cz_en_ma1.cz_en_ma2.cz_en_ma3.cz_en_mag.cz_en_md.cz_en_mm.cz_en_mm2.cz_en_mu.cz_en_nb_inKenjyanomaDemo02.cz_en_nb_inConfrontion.cz_en_nb.cz_en_niw.cz_en_niw_girl.cz_en_niw_lady.cz_en_nutsball.cz_en_nwc.cz_en_ny.cz_en_okuta.cz_en_oB1.cz_en_owl.cz_en_part.cz_en_peehat.cz_en_po_desert.cz_en_po_field.cz_en_po_relay.cz_en_po_sisters.cz_en_poh.cz_en_rd.cz_en_reeba.cz_en_rl_inKenjyanomaDemo02.cz_en_rl.cz_en_rr.cz_en_ru1.cz_en_ru2_inKenjyanomaDemo02.cz_en_ru2.cz_en_sa.cz_en_scene_change.cz_en_sda.cz_en_shopnuts.cz_en_siofuki.cz_en_skb.cz_en_skj.cz_en_skj_needle.cz_en_ssh.cz_en_st.cz_en_sth.cz_en_stream.cz_en_sw.cz_en_syateki_niw.cz_en_ta.cz_en_takara_man.cz_en_tana.cz_en_tg.cz_en_tite.cz_en_tk_eff.cz_en_tk.cz_en_torch2.cz_en_tp.cz_en_tr.cz_en_vali.cz_en_vb_ball.cz_en_viewer.cz_en_vm.cz_en_wallmas.cz_en_weiyer.cz_en_wf.cz_en_wood02.cz_en_oA2_inSpot05.cz_en_oA2_inMetamol.cz_en_oA2_inStalker.cz_en_oA2.cz_en_yukabyun.cz_en_zf.cz_en_girlB.cz_en_zl2.cz_en_zl3.cz_en_zl3_inEscape.cz_en_zl4.cz_en_zo_eff.cz_en_zo.cz_en_fhg.c

 

More general overlays/Objects/Uncategorized:

 

 

z_end_title.cz_fishing.cz_item_b_heart.cz_item_etcetera.cz_item_ocarina.cz_item_shield.cz_magic_dark.cz_magic_fire.cz_magic_wind.cz_mir_ray.c

z_obj_bean.cz_obj_comb.cz_obj_dekujr.cz_obj_elevator.cz_obj_hamishi.cz_obj_hsblock.cz_obj_ice_poly.cz_obj_lift.cz_obj_lightswitch.cz_obj_makekinsuta.cz_obj_makeoshihiki.cz_obj_mure.cz_obj_mure2.cz_obj_oshihiki.cz_obj_switch.cz_obj_syokudai.cz_obj_timeblock.cz_obj_tsubo.cz_obj_warp2block.cz_object_kankyo.cz_oceff_spot.cz_oceff_storm.cz_oceff_wipe.cz_oceff_wipe2.cz_oceff_wipe3.cz_oceff_wipe4.c

 

There should be a total of 468 here. It doesn't help with much other than to see the makeup of the game engine/actors. In some instances the C filename differs from the file table filename. For example, "z_en_oB1.c" is the bazaar shopkeeper/shooting gallery host (ovl_En_Ossan/object_ossan), but the source code proves that object_oB1 was indeed associated with the actor at one point in time. Also, apparently there were Zoras in the Sacred Forest Meadow once. And not the regular ones, but the alpha one, object_oA2. And they transformed into something else and stalked you...?

  • Like 1
Link to comment
Share on other sites

The stuff that compiled when the Nintendo devs ran their build programs. OoT as it was known to them - an organized set of text files, not a giant binary blob that we have.

 

could be the output of a program called elftbl in the sdk. not sure. would check but I'd need to hunt down a 32-bit windows image first because all the tools are 16-bit

Link to comment
Share on other sites

Knowing Nintendo's programming style as i do, that last bit is debatable.

Perhaps the files were not organized, but they surely did not deal with the ROM as a 32/64 MB image. Perhaps they did when they were still getting booting and the filesystem down, but the majority of the game development surely came after that point.

Link to comment
Share on other sites

 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.