-
Notifications
You must be signed in to change notification settings - Fork 71
[cx16] Enhanced CX16 support #363
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
Closed
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The C version seems more efficient and can optimize register usage.
This saves around 20 bytes in final PRGs.
Member
|
This is a bit much for one PR; it'll take me a long time to review everything, which will block the easier stuff from getting in. (It's really nice to see a simple change in a PR and have it be so obviously correct that I can immediately just hit the button. Even if I need to do it 20 times, that's still preferable.) Would you mind:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR brings non-breaking changes to the Commander X16 target. Apologies for the combo of changes; let me know if I should split to more focused parts.
get_ostype()did not work.vpoke()had an endianness bug.-
cx16_k_screen_set_charset()-
vpeek()-
vpoke()-
waitsync()cbm_k_functions.ldx #0before returning unsigned char (leftover from cc65).JSRFARaccess (KERNAL routine).KERNAL_VERSIONregister.typedef struct {...}instead ofstruct {}forJoyState. This is better practice and implicit in C++.CBM_LOAD_*enum for controlling KERNAL functionLOAD. CX16 has extended functionality.static_assert. Guarded for C23/C++11 or higher.