Commit graph

481 commits

Author SHA1 Message Date
Lephe
8442e0b9cf
render: fix missed clipping test in dtext() 2022-11-19 23:41:47 +01:00
Lephe
5461d54083
ld: do not remove debug sections from ELF files
They are already removed by objcopy when converting to a flat binary
because they don't have the LOAD flag.
2022-11-19 23:05:57 +01:00
mibi88
386303136c Merge branch 'dev' of https://gitea.planet-casio.com/mibi88/gint into dev 2022-11-19 20:17:58 +01:00
mibi88
8a6f3bfdce Fix typo 2022-11-19 20:14:17 +01:00
mibi88
d6e8b096b5 Added SetQuitHandler. 2022-11-19 20:14:17 +01:00
Lephe
4df3d69d8c
render: add a window setting to restrict rendering
Mono text rendering is a bad hack and probably not that fast, but meh.
We can optimize it the day it becomes a bottleneck, if ever...
2022-11-19 17:19:28 +01:00
Lephe
74438f5da5
render: add a dgetpixel() function 2022-11-16 19:12:48 +01:00
Lephe
45fa6c87c2
render-cg: fix a bug with unaligned C_INVERT drect()
The alignment optimization would write the edges twice, which is fine
for opaque color fills, but cancels out for C_INVERT.
2022-11-16 18:10:22 +01:00
Lephe
5e35871c98
usb: add timeout variants for functions
We're not using them yet (specifically in fxlink) because timeouts
leave the pipes in undesirable states that currently end up crashing.
Some reset mechanism is needed, plus support from the protocol for
canceling messages, etc.
2022-11-13 08:56:59 +01:00
Lephe
5f9553f3b8
usb: fix transmissions resuming early after world switch
When the driver goes through a world switch a reconnection with the host
is needed before operations can resume. This requires usb_open_status to
be reset.

Also: bind a FIFO before a commit that involves data transfer, mirroring
what happens in writes. This ensures that PID is set to BUF, mainly.
2022-11-12 14:51:00 +01:00
mibi88
93e055cfba Fix typo 2022-11-11 18:04:38 +01:00
Lephe
d110ab608e
usb: fix freeze on sync commit for inactive pipes
Performing an asynchronous commit on an inactive pipe would yield
USB_COMMIT_INACTVE and *not* invoke the callback (as intended),
which usb_commit_sync() ignored, causing a freeze.

This issue appeared after a world switch, which (for reasons not yet
known) appear to fail the first writes until a commit, and that commit
would then hit an inactive pipe.
2022-11-11 17:47:29 +01:00
mibi88
45e90b55ba Added SetQuitHandler. 2022-11-11 17:06:36 +01:00
Lephe
bbda77769d
kmalloc: fix krealloc() not trying across arenas 2022-11-10 19:54:45 +01:00
Lephe
7b662987f8
kmalloc: add kmalloc_max() function 2022-11-09 21:35:32 +01:00
Lephe
252bd4eb41
keydev: add low-level filter for async keyboard handlers 2022-11-08 22:22:41 +01:00
Lephenixnoir
48db9bf09d Merge pull request 'Update Slim scancodes for the row unswap' (#20) from calamari/gint-slim:dev into dev
Reviewed-on: https://gitea.planet-casio.com/Lephenixnoir/gint/pulls/20
2022-10-10 00:38:37 +02:00
calamari
1d5675c99f Update Slim scancodes for the row unswap 2022-10-09 11:00:53 -07:00
Lephe
16890ab71b
iokbd: don't swap rows; keydev doesn't need it 2022-10-09 18:19:25 +02:00
Lephe
c9df6326e4
reduce static RAM usage to maintain SH3 support 2022-10-09 18:15:12 +02:00
Lephenixnoir
97701e8eed Merge pull request 'Add fx-9860G Slim hardware detection and support to gint' (#18) from calamari/gint-slim:dev into dev
Reviewed-on: https://gitea.planet-casio.com/Lephenixnoir/gint/pulls/18
2022-09-27 23:09:30 +02:00
calamari
a735e074d8 Clean up style mismatch 2022-09-25 11:23:07 -07:00
calamari
ddf340cccd Support gint_osmenu() on fx-9860G Slim 2022-09-25 10:37:41 -07:00
calamari
5c331e5fa0 Add isSlim() macro 2022-09-25 10:37:18 -07:00
calamari
98fea4f2ec Translate fx-9860G Slim keyboard scancodes to standard scancodes
The Slim has two keys that the standard 9860G doesn't: HELP and LIGHT.
Those are mapped to virtual scancodes, resulting in virtual keycodes.
2022-09-25 01:34:40 -07:00
calamari
a4adc5e1bd Support fx-9860G Slim backlight 2022-09-24 19:49:29 -07:00
calamari
b23ed9629e Add HWCALC entry for fx-9860G Slim 2022-09-24 19:48:07 -07:00
Lephe
2b4075c8f9
keysc: have getkey() sleep
This was embarassingly no longer the case since the move to the keydev
API.
2022-09-07 23:25:57 +02:00
Lephe
e95a91d5ab
minor API comment update 2022-09-07 23:25:57 +02:00
Lephe
3e5c45c5ad
kernel: make gint_setrestart() reset everything 2022-09-02 22:29:19 +02:00
Lephe
9924dc4684
fs: add rename() function on fx-CG 2022-08-22 15:25:14 +02:00
Lephe
4f9b141b79
bump version to 2.9.0 2022-08-21 20:12:34 +02:00
Lephe
02150d90e5
ld: properly link .bss.* sections 2022-08-21 20:11:45 +02:00
Lephe
126d1506ac
cmake: install in the fxSDK sysroot 2022-08-19 16:35:47 +02:00
Lephe
6ea2f991a3
keysc: make repeat settings global instead of just for getkey()
Having repeat settings only for getkey() meant that repeats that occur
while getkey() is not running (i.e., all of them) would be lost. This is
due to e57efb5e3 which replaced on-demand repeats with normal event
generation.

Now the settings are applied globally, which allows repeats to be
enabled even when getkey() is not active. This also reduces the feature
gap between getkey() and raw events, which reduces the risk of running
into edges cases by using both.

The previous API is retained for source compatibility until gint 3.0 but
the changes are now applied globally so the semantics are slightly
different.
2022-07-24 21:57:18 +01:00
Lephe
4e1136d0ac
r61525: now account for the inverted x-axis on the display (!)
Always has been.
2022-07-17 21:17:46 +01:00
Lephe
1c3c9727a5
r61524: add a r61524_display_rect() function for small regions 2022-07-16 22:30:59 +01:00
Lephe
e8b4bcc9cb
tmu: fix delay truncation in subfunction call 2022-06-13 21:36:52 +01:00
Lephe
b17d4de4a8
cpg: do read and write CS3 on fx-CG 10/20 2022-05-23 21:20:47 +01:00
Lephe
f69f92b938
cpg: fix parameter check minding CS3 on the fx-CG 10/20 2022-05-22 20:00:22 +01:00
Lephe
8c9c48a91e
bump version to 2.8.0 2022-05-16 20:13:13 +01:00
Lephe
291c3cef17
cpg: restore overclock settings when leaving 2022-05-16 20:13:13 +01:00
Lephe
b942bc5d19
clock: add overclock support on fx-CG 10/20/50 2022-05-15 19:20:14 +01:00
Lephe
c2ff07427b
image: add image_linear_alloc() 2022-05-15 13:45:59 +01:00
Lephe
09c13676d3
image: arbitrary linear transforms 2022-05-15 12:59:28 +01:00
Lephe
780acb3fc9
image: arbitrary linear transforms [WIP] 2022-05-14 22:32:59 +01:00
Lephe
818f950fff
image: flips, including in-place 2022-05-14 20:27:16 +01:00
Lephe
9468a8d725
image: clean up palette semantics, and conversion 2022-05-14 15:36:07 +01:00
Lephe
fc6f7d3051
image: remove alpha field of images 2022-05-14 12:54:59 +01:00
Lephe
5a69e44078
image: new image format and base for the image library 2022-05-13 23:31:03 +01:00