Commit graph

464 commits

Author SHA1 Message Date
Lephe
696b0ca9c0
touch: provide coordinates of releases 2025-04-13 17:34:47 +02:00
Lephe
46f1fb99d9
touch: name events DOWN/DRAG/UP to match keyboard 2025-04-13 11:38:40 +02:00
Lephe
bc8b9863ae
touch: plug into event system (+ refactoring)
* Interrupt now at level 15 so it can work in the input timer callback
* Remember last raw/conv/dots and expose unstable API to use it via new
  include <gint/drivers/touch.h>
* Put number of touches in the structures
2025-04-13 11:23:17 +02:00
Lephe
4e20f7bc5b
touch: slight improvements towards dual-touch detection 2025-04-12 19:57:49 +02:00
Lephe
416331d48b
kernel: replace CP400 file functions with Yatis', fixing unstability 2025-04-06 22:00:40 +02:00
Lephe
3dedbea70d
fs: fix incorrect cursor state after pread/pwrite 2025-04-06 15:54:44 +02:00
Lephe
8e64a8a107
fs: fx-CP 400 fixes, still unreliable when writing as previously known 2025-04-06 15:54:44 +02:00
Lephe
7180b52fd4
fs: first steps towards working fx-CP 400 support (compiles, no syscalls) 2025-04-05 08:34:08 +02:00
Lephe
93e58c7f63
r61523: add r61523_set_pixel() function
This is used for touch framerate experiments where a full frame refresh
is too expensive.
2025-04-05 08:22:26 +02:00
Lephe
dff487b20a
touch: get calibration info from OS, if known 2025-03-30 16:01:20 +02:00
Lephe
282f56fdc1
cp: slightly less stupid dclear() 2025-03-30 16:00:03 +02:00
Lephe
4a5c0bbfec
gint: fix poweroff crash due to misaligned syscall table 2025-03-24 10:57:22 +01:00
Lephe
cf020c4bee
kernel: detect circuit10's emulator so it stays as CG50
Otherwise gint assumes Math+ by default.
2025-03-24 10:28:43 +01:00
Yann MAGNIN
b7859a1625
touch: only enable touchscreen for FXCP400 + fix C++ header support 2025-03-23 17:27:00 +01:00
Yann MAGNIN
5e633a9810
touch: code cleanup 2025-03-23 17:16:54 +01:00
Lephenixnoir
969f5ad8d8 Merge pull request 'feat/touch - (WIP) support touch-screen driver for FXCP400 devices' (#40) from Yatis/gint:feat/touch into dev
Reviewed-on: https://git.planet-casio.com/Lephenixnoir/gint/pulls/40
2025-03-23 16:33:34 +01:00
Yann MAGNIN
38eb777d02
r61523: fix newer screens variant 2025-03-21 09:30:54 +01:00
Yann MAGNIN
8515c2aecb
touch: fix typo 2025-03-19 15:56:46 +01:00
Yann MAGNIN
0ec45f92d3
touch: support event generation + support calibration information 2025-03-19 14:39:05 +01:00
Yann MAGNIN
24d932906b
touch: add missing unbind/funbind driver primitive 2025-03-19 10:29:03 +01:00
Yann MAGNIN
df1cf45e98
touch: add build support + proper driver/world-switch support 2025-03-18 11:42:22 +01:00
Yann MAGNIN
0aca688343
Merge branch 'dev' of git.planet-casio.com:Lephenixnoir/gint into feat/touchscreen 2025-03-18 10:20:39 +01:00
Yann MAGNIN
3fefc3f716
touch: prepare touch-screen driver 2025-03-17 15:07:29 +01:00
Lephe
256487cc7e
r61523: add partial update function 2025-03-15 17:08:46 +01:00
Lephenixnoir
252cb7abd8
cpg: fix incorrect access size to SDMR3_CL2 and SDMR3_CL3 2025-03-11 15:33:16 +01:00
Lephe
411b1a3d7d
kernel: get arenas from MPM load info 2025-02-24 19:41:49 +01:00
Yann MAGNIN
0950c9d29f
dline: fix odd x1/x2 handling with C_INVERT color (render-cg) 2025-02-22 15:27:56 +01:00
Lephe
c2cc3e48f2
cpg: allow overclock settings to be made permanent 2025-02-20 19:16:33 +01:00
Lephe
d858405102
usb: add WCID support to have WinUSB driver automatically
This should work on Windows Vista onwards. By specifying Windows OS 1.0
descriptors announcing compatibility with WinUSB, we get it as a driver
plug-and-play style with no manual intervention (e.g. no Zadig).

From there libusb can enumerate the device, which is awesome.
2025-02-19 20:00:49 +01:00
Yann MAGNIN
377aa3745d
fix missing C_INVERT support in dline() for render-cg 2025-02-19 16:11:44 +01:00
CalcLoverHK
cdcf880006 cpg: add superhyway clock frequency calculation 2025-02-16 17:04:27 +08:00
Lephe
ff17b8c22c
kernel: syscall support for Math+ OS v2.00 2025-02-03 23:52:48 +01:00
Lephe
87fff59527
keysc: fix keycodes mapping to multiple keys on Math+ 2025-02-03 23:52:48 +01:00
Lephe
232a4195d2
cpg: don't overclock beyond known limits on Math+ 2025-02-03 23:52:48 +01:00
Lephe
7ac9668dfd
keydev: add Catalog+4th row combo for F1...F6 on Math+ 2025-02-03 23:52:48 +01:00
Lephe
7a479e4f45
keydev: support for the Math+ layout and track row/col
key_event_t is now 8 bytes instead of 4, a change that was doomed to
happen anyway to deal with touch input (where it's not clear either
whether 8 bytes will be enough for double touch).
2025-02-03 23:52:48 +01:00
Lephe
a62ba8a026
kernel: further support for the Math+ in general
* Add a new HWCALC value HWCALC_FXCG100, detected based on being on an
  Area-3 RAM model and having OS version that's either less than 3 or
  3 and built after January 2025.
* Disable the _ostk heap arena, as the region might simply not exist,
  and improve the VRAM allocation code to account for this better than
  the hardcoded macro previously in place for the fx-CP 400.
* Disable gint_osmenu() which can't work with MPM right now.
* Add BFile_FindFirst() and GetVRAMAddress() syscalls.
2025-02-03 23:52:48 +01:00
Lephe
f953efdc82
kernel: partial support for Math+ OS 1.00 2025-02-03 23:52:47 +01:00
Lephe
1df334110e
kernel: allows syscalls to be called from fixed addresses 2025-02-03 23:52:44 +01:00
Yann MAGNIN
45139d13b5
kernel: simplify PIE support 2024-12-13 13:38:59 +01:00
Lephenixnoir
2ef2c7de27
kernel: fix 512-kB RAM check on mono being duped by cache
This was noticed by Sentaro21 and tested by CalcLoverHK on a Slim.
2024-10-19 09:44:38 +02:00
Lephe
ccdd4c227c
provide new line-distance property for built-in fonts 2024-09-15 18:44:44 +02:00
Lephe
aba6c280b6
hh2: provide metadata macros and a non-metadata marker by default
If none of the HH2_*() macros are used, the binary will show up as its
own filename instead of random garbage.

If HH2_NAME() is used the metadata will be read, and the binary format
requires that all fields by specified. Using only a subset of the macros
is invalid, but not reported.
2024-08-17 18:05:43 +02:00
Lephe
93329ab697
fix new GCC 14 warnings 2024-08-06 19:02:43 +02:00
Lephe
85e50658ea
libc: provide the fxlibc HAL
See 8cedf41 in fxlibc for rationale.
2024-08-06 19:01:43 +02:00
Lephe
ae3250edd0
fs readdir: fix handling of BFile_Type_MainMem entries
These are g*m files, not the @MainMem folder.
2024-08-04 07:55:14 +02:00
Lephe
a45135776a
fs readdir: recognize a few more bfile types 2024-07-27 21:49:01 +02:00
Lephenixnoir
4173bf1f78
exch, inth: save more data in context structure, and simplify entries 2024-07-15 20:57:26 +02:00
Lephenixnoir
f0bca5183f
cpg: fix typo in #30 2024-07-15 18:35:22 +02:00
Sylvain PILLOT
51e3945094 corrected overclock parameter F5 as per Sentaro21 recommendations for leak fxCG50 machines 2024-07-13 10:26:37 +02:00