All ~235 translation units now compile and the target links under MSYS2 GCC 16 + CMake/Ninja (ninja ge007 -k 0: 236/236, zero errors). N64 build untouched; every src/ change is -DPORT-gated. Portability fixes (findings D7-D17 in docs/PCPortResearch.md section 11): - AI X-macro system: SWITCH() call sites activated to the author's hand-written byte-identical references under PORT; port/shim/ bondaicommands.h + bondconstants.h + CPPLib.h re-emit the IDO paste tricks (isSubroutine, file-record macros, generated CALL) GCC-clean. - 64-bit pointer-in-word initializers: monAnim jump targets now go through an index table resolved by the interpreter (chrai.h/propobj.c); UsetuplenZ.c credits pointer PORT-gated to 0. - IDO printf engine compiled for PC (xprintf/xlitob/xldtob) with a shadow xstdio.h resolving the _Printf prototype clash. - Host-libc gaps stubbed in port/: bcopy/bzero, __libm_qnan_f, tlbmanage*, g_ViXScales/YScales; chrObjRandom PRNG ported from .s. Asset data strategy (D16): single-file assets compiled for real (animation tables, fonts, textures, rareware logo); obseg per-file .c excluded (colliding file-local globals the N64 build isolates via per-ELF linking); 758 ROM-derived table symbols + ramrom_* + segment markers stubbed in port/src/assetstubs.c / n64stubs.c. fast3d is a no-op placeholder (port/src/gfxstub.c) until Phase 2 brings in the real software RSP. Binary not yet runnable end-to-end: ROM loading in romdata.c is still a TODO.
obseg Asset Readme
These assets consist of model and level information, and all text in the game.
There are eight categories (subfolders) of obseg assets included in source code. Visit each subfolder for a more detailed readme.
obseg asset categories are:
bgbriefchrgunpropsetupstantext
bg Assets
Level background geometry display lists and portal info.
brief Assets
Maps text strings into mission briefings.
chr Assets
Character models display lists.
gun Assets
On screen gun models display lists.
prop Assets
Prop and item models display lists.
setup Assets
Setups contain the mission scripting logic, AI Scripting, object information, Pad and Portal placement, guard paths and nav mesh. (see below for descriptions)
stan Assets
Stand Tiles. Refereed to by Rare Staff as "stans" in GE or simply "Tiles" in PD. (see below for descriptions)
text Assets
All game text.
Misc Assets
In the root of this folder is a file listing all of the assets included in the build, with path and filename info. This is used at runtime to resolve the list of available assets.
Concepts
Room
A level is divided into rooms.
Portal
Portals allow Bond to see through them to connected rooms that are otherwise culled to save unnecessary processing.
Pad
A room contains one or more pads.
Path
Guard pathing information between pads.
Nav mesh
Also known as "sets". Colleciton of pads, to aid in the AI algorithm to find the shortest path to Bond.
Stan or Tiles
Defines floor information.