Skip to content

Better controller pak#504

Merged
KiritoDv merged 9 commits intoHarbourMasters:mainfrom
coco875:better-controller-pak
Jul 28, 2025
Merged

Better controller pak#504
KiritoDv merged 9 commits intoHarbourMasters:mainfrom
coco875:better-controller-pak

Conversation

@coco875
Copy link
Copy Markdown
Contributor

@coco875 coco875 commented Jul 23, 2025

coco875 and others added 6 commits July 23, 2025 02:00
use https://github.com/sonicdcer/N64ModernRuntime/blob/controllerpakimpl/librecomp/src/pak.cpp as a ref

Co-Authored-By: Alejandro Asenjo Nitti <96613413+sonicdcer@users.noreply.github.com>
Co-authored-by: Dario <dariosamo@gmail.com>
Co-authored-by: Mr-Wiseguy <mrwiseguyromhacking@gmail.com>
@coco875 coco875 marked this pull request as ready for review July 23, 2025 20:29
osPfsReadWriteFile(&gControllerPak2FileHandle, gControllerPak2FileNote, 0U,
(arg0 * (sizeof(u8) * 0x1000)) + 0x100, sizeof(u8) * 0x1000, (u8*) sReplayGhostBuffer);
osPfsReadWriteFile(&gControllerPak2FileHandle, gControllerPak2FileNote, PFS_READ,
(arg0 * (sizeof(u8) * 0x10000)) + 0x100, sizeof(u8) * 0x10000, (u8*) sReplayGhostBuffer);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bigger ghost buffer?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes to avoid some bug

const u8 gGameName[] = "MARIOKART64";
const u8 gGameName[] = {
0x26, 0x1a, 0x2b, 0x22, 0x28, 0x24, 0x1a, 0x2b, 0x2d, 0x16, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00
};
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change is required for byte-matching output?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for the screen because else it's weird symbole (font system etc)

AddWidget(path, "Controller pak screen", WIDGET_CVAR_CHECKBOX)
.CVar("gControllerPakScreen")
.Options(CheckboxOptions().Tooltip(
"Enables the Controller Pak screen when starting the game."));
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about a physical button that puts the player to the pak screen, using gMenuSelection?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm don't really want because not sure if it will be fine to trigger it at any time

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be fine to trigger it any time.

src/port/pak.cpp Outdated
assert(false);
}
if (!pak.header.is_open()) {
assert(false);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Replace asserts with errors or return errors.

@KiritoDv KiritoDv merged commit a4d0ead into HarbourMasters:main Jul 28, 2025
2 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants