Files
rijads 1de921685f First boot on the console: the title screen at 1080p
- Runtime: stdio output goes to the log file and the kernel log (the console's printf writes
  nowhere visible); exit ends the title through sceSystemServiceLoadExec (the exit system call
  gets it killed with SIGSYS); realpath on stat (the libc's fails with EPERM, which broke libc++'s
  relative and with it OpenRCT2's case-insensitive file lookups); threads get 2 MiB of stack (the
  console's default is 64 KiB); folder listing keeps nullfs entries, whose inode is 0.
- The game relinks when the runtime changes.
- main loads the keyboard and IME dialog modules (their imports are null otherwise), selects
  SDL's software renderer, and writes a first-run config with the interface at 2x.
- The documentation (changelog) is packaged into the data folder.
- Console tests: plan lines list, stat, realpath and arg; the harness logs the renderer and how
  much of each captured frame is lit. tools/klog.py records the kernel log; tools/deploy.py
  --eboot uploads only the executable.
2026-10-04 20:00:06 +02:00

19 lines
585 B
Python

"""Writes the console's kernel log (klogsrv on port 3232) to a file until stopped.
uv run --no-project python tools/klog.py build/klog.txt
"""
import socket
import sys
import time
with open(sys.argv[1], "ab", buffering=0) as out:
while True:
try:
with socket.create_connection(("192.168.0.90", 3232), timeout=10) as sock:
sock.settimeout(None)
while chunk := sock.recv(65536):
out.write(chunk)
except OSError as e:
out.write(f"\n[klog.py: {e}]\n".encode())
time.sleep(5)