Skip to content
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

Add Syscalls module #536

Merged
merged 22 commits into from May 11, 2024
Merged

Add Syscalls module #536

merged 22 commits into from May 11, 2024

Conversation

andressbarajas
Copy link
Contributor

@andressbarajas andressbarajas commented May 1, 2024

Here we are again but with a more slimmed down PR.

  1. Pulled all the syscall calls to its own module (syscalls.h, syscall.c, syscall_font.s). New syscall to get Dreamcast ID.
  2. Updated Cdrom, Flashrom, and BioFonts to use this new module.

Tested on GDEMU using raster_melt, and custom example for biosfont. Havent tested flashrom but if the other syscalls work then I expect the flashrom ones to work too since they use the same code to make the system call.

Ive decided to look into DCLOAD syscalls at a later date.

kernel/arch/dreamcast/hardware/biosfont.c Outdated Show resolved Hide resolved
kernel/arch/dreamcast/hardware/syscalls.c Show resolved Hide resolved
kernel/arch/dreamcast/include/dc/syscalls.h Outdated Show resolved Hide resolved
@gyrovorbis gyrovorbis added enhancement Enhancing an existing feature documentation Update, Fix, or Add new Doxygen Documentation cleanup Cleaning up or refactoring existing functionality labels May 3, 2024
andressbarajas and others added 10 commits May 6, 2024 13:36
Remove ingroup tags

Co-authored-by: Falco Girgis <gyrovorbis@gmail.com>
More documentation fixes

Co-authored-by: Falco Girgis <gyrovorbis@gmail.com>
rename syscall_gdrom_run_commands to syscall_gdrom_exec_server
Update naming of run_command elements
Add more detail to documentation
@andressbarajas
Copy link
Contributor Author

I believe this PR is Ready to GO! To summarize:

  1. No behavior change. I centralized all the system calls into syscalls.h/.c, syscall_font.s.
  2. New syscalls to get Dreamcast ID, Dreamcast system icons, soft reset the console, exit to CD menu.

gyrovorbis
gyrovorbis previously approved these changes May 10, 2024
Copy link
Contributor

@gyrovorbis gyrovorbis left a comment

Choose a reason for hiding this comment

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

I am approving this to let people know that I have reviewed it, tested that it builds, looked at Doxygen, and no longer feel I have anything to contribute or need from it; HOWEVER, it's too big for me to feel comfortable merging without @ljsebald.

Also, @QuzarDC and @DC-SWAT, did you have anything else to add?

@gyrovorbis gyrovorbis assigned gyrovorbis and ljsebald and unassigned gyrovorbis May 10, 2024
Copy link
Contributor

@DC-SWAT DC-SWAT left a comment

Choose a reason for hiding this comment

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

Looks good for me.

Copy link
Member

@QuzarDC QuzarDC left a comment

Choose a reason for hiding this comment

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

Fantastic work! Totally inline with my #151 project of standardization. And with them all laid out like this we now have easy access to some undocumented/unused ones to explore.

Had one change request of a typo that was my fault to begin with (and left some extra comments for future work but that don't require any change). Then it's good to go.

kernel/arch/dreamcast/hardware/biosfont.c Outdated Show resolved Hide resolved
kernel/arch/dreamcast/hardware/biosfont.c Show resolved Hide resolved
kernel/arch/dreamcast/hardware/biosfont.c Show resolved Hide resolved
andressbarajas and others added 2 commits May 10, 2024 20:27
@QuzarDC QuzarDC merged commit 71aa13a into KallistiOS:master May 11, 2024
@andressbarajas andressbarajas deleted the syscalls branch May 13, 2024 15:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cleanup Cleaning up or refactoring existing functionality documentation Update, Fix, or Add new Doxygen Documentation enhancement Enhancing an existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants