-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
prussia_bios: Wrapping BIOS calls #2
Comments
Syscalls by number (as documented in PS2tek):
|
Hello @Ravenslofty. I'm very new to the PS2 dev scene so my opinion may not carry much weight. I don't imagine all the syscalls are needed, and some are higher-priority than others. Eventually, most would be desired, but some would be desired sooner than others, so how about a roadmap to plot which syscalls are needed for which desired features (for instance, strings I imagine would require the heap-related syscalls)? Regarding Rust vs assembly, I don't know how much of a bloat the rust implementation would take. For the time being, I'd say leave it in Rust where the environment is familiar, and then if need be, upgrade it to assembly. For the time being, if file size really is an issue, feature flags may help with stripping away unused functions. What do you think? |
Well, yes and no. See, the PS2 was built around a...modest threading library, and so the heap syscalls interface with that (they set up per-thread heaps). But I think in modern times we would use
There's certainly some mitigation to the bloat of implementing things in Rust: by not depending on any of the PS2 BIOS calls we can treat the space used by the BIOS as free memory and reclaim a megabyte or so of memory. |
True that about the threading, if memory serves its only a single core cpu (not counting VUs and other bits)? In that case, I suppose there isn't need for any of the bios calls is there? What would you suggest as a next step? |
I would say there is exactly one useful BIOS call from Prussia's point of view: This can be RIIR'd, but I think it would be easier to do if we had the GS video registers abstracted over, which brings us back to #9... |
Some open questions:
_ExceptionEpilogue
, right?)The text was updated successfully, but these errors were encountered: