Commit Graph
41 Commits
Author SHA1 Message Date
MrBruh 0182da8172 Add high-res text and OpenCE titles 2026-10-02 13:39:17 +13:00
MrBruh 4adc3a87a5 Remove matching tooling and HALO_LINUX ifdefs 2026-09-30 21:49:46 +13:00
MrBruh a17d89c6f1 Merge bnunu/halo-1 main 2026-09-30 18:13:05 +13:00
Jonas Volman 6bfd956737 Reconcile approved Halo fidelity packets and bounded data credit
Recover transparent geometry submit (+1,285 meaningful code, zero exact losses); reconcile COMMON ownership and Q10 85+EXT1 credit, actions/main data, and separately disclosed denominator corrections. Preserve canonical-only repairs and all held research. C09 is ordinary disclosed cleanup, not a claim of proven scaffolding intent. Clean rebuild, 1,663 tests, parks, audits, provider links and independent EXT1 check pass. Local reconciliation only.
2026-09-29 13:52:37 -07:00
MrBruh 3c1d956703 Add NTSC multiplayer strings 2026-09-28 19:27:52 +13:00
Jonas Volman 709bfc3a3c Reconcile approved frontier ownership and admission packets
Import only independently reviewed production changes. Preserve canonical physics and virtual-keyboard repairs; keep B3 and all unresolved holds out.

Record exactly four approved canary debits (6987 meaningful bytes), six Halo admissions and two revocations. Keep vendor ioinit/storage work separate. Full build, 8252-row sweep, 1318 tests, park/admission/fake audits and 621-object binding pass within approved debit bounds.

Do not publish donor research dumps or private assets. README and unrelated user research remain untouched. See frontier_publication_reconciliation_20260927.md for complete evidence limits and accounting.
2026-09-27 17:12:48 -07:00
MrBruh e29125b50e Port decomp to Android 2026-09-26 16:16:00 +12:00
Jonas VolmanandClaude Opus 5.5 1cd5e4ede2 R2 batch 2: reviewed zero-credit ownership/storage packets; two '$'-defect data entries
All packets passed a precedent audit and an independent adversarial review.
No object changes status.
- Storage per cachebeta publics (source static + symbols.json rows):
  - bink_playback: four globals;
  - weapons: 11 rows + weapon_magazine_finish_reload;
  - object_lights: 4 helpers; should_render_lights is the /Od-attested call and
    its prototype leaves the public header;
  - vehicles: _update_turret_physics;
  - weather_particle_systems: one_over_char_max is external (cachebeta public,
    HCEX Global); its globals are static;
  - rasterizer_xbox_debug: 8 D3DINLINE wrapper rows (already Matching: audit
    FAIL(8) -> PASS, pdb 8 -> 0).
- draw_string: the invented external draw_string_globals aggregate (pads, blob,
  #define aliases) becomes four HCEX-attested file statics in /Od declaration
  order with = { 0 } (a595bbc2 precedent); typed multitexture params.
- render_debug: three rule-6 hand expansions become real point_from_line3d
  calls (ruling #1/#2); the opaque vehicle view gives way to struct
  vehicle_datum + vehicle_datum_try_and_get; the six debug_* toggles become
  tentative definitions (COMMON evidence).
- vehicles: the TU-wide REAL_MATH_EXTERNAL_POINT_FROM_LINE3D define is gone and
  the pathfinding hand expansion becomes the genuine call (ruling #1).
- rasterizer_xbox_profile V1R (reviewer-amended): byte-inert /Od parameter
  order, the BUG marker comment, detail_objects via the rasterizer_xbox.h API,
  and a rejection text that keeps the SDK-table policy question open.
- semantic_data_matches.json: single-section '$'-defect entries with
  allow_incomplete_unit for projectiles _projectile_update_section (1,548 B) and
  object_lights _lights_section (1,541 B) (leaf_map / editor_flying_camera /
  race precedents).

Gate (full ninja, objdiff 3.3.1): objects 384 (unchanged), code unchanged,
data +3,089; stable diff 0 regressions; parks 83/0/0; admission 10/0/2/0; fake
scan 26; pytest 1159 passed; diff --check clean.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 15:12:09 -07:00
Jonas VolmanandClaude Opus 5.5 dc58693c9f Match stack walk, main render and small systems functions
Lane D refresh packet 4: systems, +3,984 padded bytes strict exact
(11 functions), zero stable-verdict regressions; stack_walk_windows.obj is
now a whole-object code match (16/16).

- stack_walk_windows.c: _walk_up, _is_valid_ebp, _walk_stack,
  _walk_stack_context and _stack_walk_with_context exact. The debug build
  attests `if (ignore_levels) while (--ignore_levels) walk_up();`, the
  global re-reads and the four instruction-byte locals.
- main.c: _compute_subframe_counts (debug-build byte local and ?: column
  test) and _main_game_render (PIN, goto-free player-window assignment).
- bink_playback.c: _bink_draw_frame (the ((index+1)&2) corner idiom used by
  interface.c and hud_draw.c; debug locals scoped to the debug block).
- draw_string.c: _parse_string; styled_font_get takes (font_index, style)
  per the debug build's parameter homes.
- prime_numbers.c: _primegen as a plain sieve.
- transport_endpoint_set_winsock.c: _add_endpoint_to_set single exit.
  fake_match_scan flags its listening-bit test as identical branches; the
  debug build has two separate FD_SET expansions under the same test and
  January's bytes carry the test, so the shape is original (commented).
  _poll_endpoint_set moves to the target's 560-byte size (fuzzy 72.3% ->
  98.5%); its park is re-measured in place.
- parked.json: unpark the six newly exact parked functions; refresh
  _poll_endpoint_set.

Gate: ninja PASS, parks 134 active / 0 stale / 0 invalid, admission 0
contradicted / 0 revoked, castcheck clean; fake scan adds only the
adjudicated identical-branches lead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-23 01:09:42 -07:00
Jonas VolmanandClaude Opus 5 3083f800b5 Reopen four parks: detail objects, character draw, hud sound and bink cache
Wave n1 of the next-150K lane (fresh structural portfolio at ae10935da).

- structures _structure_render_detail_objects (+1136): reopened with the natural
  array initializer, which the w2 verifier asked for when it rejected the
  hand-written a[0]=0/memset expansion (R6).
- draw_string _bitmap_draw_character (+944).
- hud_sounds _hud_play_sound (+352): closed by removing the one-use index alias
  and reading sound_indices directly (A5), NOT by the volatile/goto body that the
  park record shows was deliberately replaced.
- bink_playback _bink_free_texture_cache (+96): the park premise was the repo's
  own match_dassert wrapper; the user-supplied Bungie random_math.c spells the
  same two sites vassert, and the tree is 874 match_vassert to 14 match_dassert.
- structures _structure_get_planar_fog: zero-credit remeasure. Adding the
  discarded fog-plane lookup January provably executes (its 15th
  _tag_block_get_element_with_size relocation at +0x16d) closes both structural
  tags; 448/448 and 15/15, residual now one register-naming window.

Rejected by the verifiers and not landed: _bink_alloc@4 (exact only with an __asm
block in a pool allocator - house rule 10 allows asm only for evidenced
helper/math routines), the progress_bar _code_000d16d0 rename (standing hold),
and the _portal_hull_from_points remeasure. wind _wind_variance_get is HELD for an
owner ruling (see its ledger).

Full ninja, parks 274 active / 0 stale / 0 invalid, stable diff vs
scratch/opus5-next150-before.json: gained 4 / 2,528 padded, regressions 0; fake
scan 0 leads.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-15 21:43:58 -07:00
Jonas VolmanandClaude Opus 5 e34edcd087 draw_string: reopen styled_font_get, pick_draw_character and the draw_string/unicode string family exact
parse_string park re-measured as the coupled January stack-ABI prerequisite (evidence appended); bitmap_draw_string stays parked (its exact form reproduces a NULL dereference). 6 park(s) removed. Adversarially verified (wave D park re-investigation); full build of the combined wave D set: 0 regressions, parks 402/0/0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-13 23:09:11 -07:00
Jonas Volman 73e6f3d7b8 Close draw-string tab-stop setter 2026-09-03 23:50:39 -07:00
Jonas Volman e2f51904df Preserve draw string header schedule 2026-09-02 23:24:14 -07:00
Jonas Volman 1bab4c6a5a Reconstruct draw string object 2026-09-02 23:19:53 -07:00
Jonas Volman 734dd02e1f Match draw string picking 2026-08-28 15:17:13 -07:00
Jonas Volman d9a77e3edc Match Unicode object 2026-07-16 22:50:14 -07:00
Jonas Volman b6ef40d1b4 Match Unicode string families and ASCII conversion 2026-07-16 22:29:10 -07:00
Jonas Volman dcc30d3d8d Match Unicode memory stream and file wrappers 2026-07-16 22:12:34 -07:00
Jonas Volman b6762f95e8 Match Unicode bounded and formatted wrappers 2026-07-16 22:07:19 -07:00
Jonas Volman 7ab1c55a76 Match Unicode string and conversion wrappers 2026-07-16 21:57:06 -07:00
Jonas Volman fe060e3e95 Match Unicode memory file and time wrappers 2026-07-16 21:52:22 -07:00
Jonas Volman 8376090b02 Match draw string configuration leaves 2026-07-16 21:47:22 -07:00
Jonas Volman 477840b0ca Match Unicode character wrappers 2026-07-16 21:17:41 -07:00
Jonas Volman 3377c1dc3f Match draw string map lifecycle 2026-07-15 10:24:55 -07:00
Jonas Volman 9a8a47dcf6 Match draw string lifecycle 2026-07-15 08:39:21 -07:00
Jonas Volman 3cd314ca3b Align typed accessors with HCEX conventions 2026-07-14 19:03:06 -07:00
Jonas Volman 76485bad44 Match unicode_string_list_get_string 2026-07-14 15:47:14 -07:00
Jonas Volman 01eabff4b6 Match string_list_get_string 2026-07-14 15:47:14 -07:00
Jonas Volman e1867aadc5 Match previous character traversal 2026-07-14 14:59:33 -07:00
Jonas Volman c3a4c38ebe Match character alignment bounds 2026-07-14 14:59:33 -07:00
Jonas Volman 7c5171d978 Match double-byte character parsing 2026-07-14 14:59:33 -07:00
Jonas Volman 49b169fa57 Match font_get_character_by_ascii_code 2026-07-14 14:19:37 -07:00
Berthalamew 37e96a1c2f ai_debug work (#37) 2026-07-13 14:34:27 +01:00
punpckhdq cce8ecb1f2 Use space before equals (#21) 2026-06-08 02:44:47 +01:00
Berthalamewandpunpckhdq eb93ce635e wip objects.c work (#12)
* wip objects.c work

* objects_disconnect_from_structure_bsp

* match more functions

* more objects work

* objects_update work

- 93.42% matching

* match matrix4x3_transform_point

* more objects work

- fix duplicate symbol name at 1870800

* match object_choose_random_change_colors

* match object_update

* objects_garbage_collection work

* match object_set_position

* more object work

* match objects_update

* more object work

* match object_select_random_region_permutations_by_variant

* objects_in_sphere work

99.90% match

* object name list calls

* match objects_in_sphere

* misc matches

* match structure_bsp_definitions object

* match objects_in_clusters_by_indices

* more object work

* match `edit_text_handle_key`

* mark edit_text as matching

* misc changes

- match get_next_character
- match data section in objects.c

* object_export_function_values work

* match object_compute_function_values

* match object_get_orientation

* added functions and adjust formatting

* fix profile macros

* formatting changes

* more formatting

* more formatting

---------

Co-authored-by: punpckhdq <121350336+punpckhdq@users.noreply.github.com>
2026-02-15 01:05:45 +00:00
First Lastandpunpckhdq 18c973a7d7 tag_groups.c (#10)
* tag_groups.c

* Formatting changes and correct types

* Oops

---------

Co-authored-by: punpckhdq <121350336+punpckhdq@users.noreply.github.com>
2026-01-10 16:23:15 +00:00
Berthalamewandpunpckhdq 4817ee1995 console/terminal related work (#8)
* misc changes and additions

formatting changes and add structs/constants for terminal work

* match write_to_error_file and add error_global_data

* console work

* requested changes

* terminal work

100% match all terminal functions

* Formatting

---------

Co-authored-by: punpckhdq <121350336+punpckhdq@users.noreply.github.com>
2026-01-06 23:30:12 +00:00
punpckhdq a13889fe74 attract_mode_get_localized_movie_path: 58.12% 2026-01-06 01:41:24 +00:00
punpckhdq 4bd27e8251 Push all applicable HCEX header stubs 2025-11-27 10:43:31 +00:00
punpckhdq 07a373c908 Correct location of text/ sources 2025-11-27 03:10:20 +00:00
punpckhdq e830efbd7c Initial commit 2025-11-27 02:27:27 +00:00