revamp controller LED in jak 1 + reorganize some pc-settings things + fix some jak 2 decomp (#2719)

This commit is contained in:
ManDude
2023-06-13 19:26:44 +01:00
committed by GitHub
parent 1eec021593
commit e2c84d7635
63 changed files with 1406 additions and 1226 deletions
+14 -5
View File
@@ -23,7 +23,7 @@ void klisten_init_globals() {
*/
void ClearPending() {
if (!MasterDebug || !ListenerStatus) {
// if we aren't debugging print the print buffer to stdout.
// if we aren't debugging or connected print the print buffer to stdout.
if (PrintPending.offset != 0) {
auto size = strlen(PrintBufArea.cast<char>().c() + sizeof(ListenerMessageHeader));
if (size > 0) {
@@ -34,10 +34,19 @@ void ClearPending() {
} else {
if (ListenerStatus) {
if (OutputPending.offset != 0) {
Ptr<char> msg = OutputBufArea.cast<char>() + sizeof(ListenerMessageHeader);
auto size = strlen(msg.c());
// note - if size is ever greater than 2^16 this will cause an issue.
SendFromBuffer(msg.c(), size);
// note - same 64 kB patch as prints done here
char* msg = OutputBufArea.cast<char>().c() + sizeof(ListenerMessageHeader);
auto size = strlen(msg);
while (size > 0) {
// sends larger than 64 kB are broken by the GoalProtoBuffer thing, so they are split
auto send_size = size;
if (send_size > 64000) {
send_size = 64000;
}
SendFromBuffer(msg, send_size);
size -= send_size;
msg += send_size;
}
clear_output();
}
+2 -2
View File
@@ -19,7 +19,7 @@ extern Ptr<u8> PrintBufArea;
constexpr u32 DEBUG_MESSAGE_BUFFER_SIZE = 0x80000;
constexpr u32 DEBUG_OUTPUT_BUFFER_SIZE = 0x80000;
constexpr u32 DEBUG_PRINT_BUFFER_SIZE = 0x200000;
constexpr u32 PRINT_BUFFER_SIZE = 0x2000;
constexpr u32 PRINT_BUFFER_SIZE = 0x8000; // upped from 0x2000 on PS2 because we ran out of memory
struct format_struct {
char data[0x40];
@@ -141,4 +141,4 @@ char* kitoa(char* buffer, s64 value, u64 base, s32 length, char pad, u32 flag);
* The format function does have the ability to call it, but it always passes a zero because
* getting a 128-bit integer in PS2 gcc's varargs doesn't work.
*/
void kqtoa();
void kqtoa();