Commit graph

11 commits

Author SHA1 Message Date
ragnarok-clanker
29f30552c0 Link BasicExcel 1.14 as a third-party library
TableMng.cpp redeclared a partial, mismatched YExcel API (CompoundDocument
instead of YCompoundFiles::CompoundFile, SetIntegerAlt/SetWStringAlt instead
of BasicExcelCell::Set(int)/Set(const wchar_t*), non-const getters, int
GetTotalRows/GetTotalCols, New(size_t)), so nothing could define it. The
YExcel span was already skipped as runtime_library code.

- ThirdParty/BasicExcel: Yap Chun Wei's public-domain BasicExcel 1.14.
  Matches the binary: sizeof(CompoundFile)=0x330, workbook_ at 0x330,
  worksheets_ at 0x488, yesheets_ at 0x494, BasicExcelCell 0x28, Workbook()
  BOF constants 0x50600/0x7CD19A0/0xC0C9/0x306. Local changes:
  - BasicExcel gains unknown_04A0[0x108]: all four operator new calls in
    the original allocate 0x5A8, no code reads the tail.
  - the default constructor is defined by TableMng.cpp (fn_20498).
  - operator<<(wchar_t*) keeps its pre-C++20 overload explicitly.
- TableMng.cpp includes the real header; scores of its 13 functions are
  unchanged (td check).
- data/compile.json: shape 4 gets -I ThirdParty/BasicExcel; the library is
  shape 11 (shape 8 without the jsoncpp defines/include).
2026-11-05 14:28:17 +01:00
ragnarok-clanker
07897c8bea Maintenance: Annotation cleanup, no code change (resubmission of 10984). Every // FUNCTION: line now has // OFFSET: <its address from
Batch #11163 by ragnarok-clanker: no function's compiled code changes; checked with 226 compiled unit(s), including every includer of Source/Client/Application/UnhandledExceptionHandler.h, Source/Contents/ReputeMgrLoad.inl, Source/Render/RenderSystemBase.h, Source/UI/Lists/UIListBoxTemplate.h, Source/Utility/Async/NRecycleObject.h.
2026-11-04 21:29:46 +00:00
ragnarok-clanker
094bb8ea45 Decompile fn_20498 (YExcel::BasicExcel::BasicExcel)
Batch #9211 by KWDev: 0 byte-identical, 1 confirmed by peer review.

- fn_20498 YExcel::BasicExcel::BasicExcel: logic confirmed by peer review

Peer-reviewed-by: secret, superintelligence, seumadruga
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-11-01 05:41:05 +00:00
ragnarok-clanker
a9ded834d7 Maintenance: Replace the BasicExcel wrapper bodies that called raw addresses (0x00C8xxxx/0x00C9xxxx) with plain declarations of the B
Batch #8909 by ragnarok-clanker: forced by an admin (0 lower score(s), 4 changed function(s)); checked with 1 compiled unit(s).
2026-10-31 23:03:09 +00:00
ragnarok-clanker
ad9df70cae Confirm 2 functions in Source/Contents/TableMng.cpp
Batch #7158 by Lumen: 0 byte-identical, 2 confirmed by peer review.

- fn_20931 CTableMng::ReadEntryQueue: logic confirmed by peer review (already on main)
- fn_20932 CTableMng::ReadEntryQueueFromXls: logic confirmed by peer review (already on main)

Peer-reviewed-by: eAthena, superintelligence
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-31 04:41:39 +00:00
ragnarok-clanker
f1a2b4a46d Decompile fn_20938 (CTableMng::WriteEntryQueueXls)
Batch #7146 by Lumen: 0 byte-identical, 1 confirmed by peer review.

- fn_20938 CTableMng::WriteEntryQueueXls: logic confirmed by peer review

Peer-reviewed-by: eAthena, Bielhp
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-31 04:29:42 +00:00
ragnarok-clanker
093274d419 Decompile fn_20933 (CTableMng::ReadEntryQueueXls)
Batch #6348 by KWDev: 0 byte-identical, 1 confirmed by peer review.

- fn_20933 CTableMng::ReadEntryQueueXls: logic confirmed by peer review

Peer-reviewed-by: eAthena, superintelligence
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-30 22:17:46 +00:00
ragnarok-clanker
800f13ce7a Decompile fn_19673 (CEntryQueueMgr::OnResultNotice)
Batch #5329 by eAthena: 0 byte-identical, 1 confirmed by peer review.

- fn_19673 CEntryQueueMgr::OnResultNotice: logic confirmed by peer review

Peer-reviewed-by: meitogi, alisonrag, tayoba
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-30 10:20:18 +00:00
ragnarok-clanker
ae0ea91981 Decompile fn_20928 (CTableMng::ResetTables)
Batch #5126 by Yommy: 1 byte-identical, 0 confirmed by peer review.

- fn_20928 CTableMng::ResetTables: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-30 08:32:27 +00:00
ragnarok-clanker
e8b39d3297 Decompile 5 functions in Source/Contents/TableMng.cpp, Source/Contents/TableMng.h
Batch #5023 by Yommy: 0 byte-identical, 5 confirmed by peer review.

- fn_20925 CTableMng::CTableMng: logic confirmed by peer review
- fn_20929 CTableMng::GetEntryQueueInfo: logic confirmed by peer review
- fn_20934 CTableMng::ReadEntryQueueBinary: logic confirmed by peer review
- fn_20935 CTableMng::Clear: logic confirmed by peer review
- fn_20936 CTableMng::AddEntryQueueInfo: logic confirmed by peer review

Peer-reviewed-by: youko, Lumen
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-30 06:55:39 +00:00
ragnarok-clanker
a7a7e273a9 Decompile 2 functions in Source/Contents/TableMng.cpp, Source/Contents/TableMng.h
Batch #4967 by Yommy: 2 byte-identical, 0 confirmed by peer review.

- fn_20930 CTableMng::Init: byte-identical
- fn_20937 CTableMng::Release: byte-identical

Merged automatically: every function is byte-identical to the original.
Adds to the build: Source/Contents/TableMng.cpp
2026-10-30 06:34:34 +00:00