Commit Graph

189 Commits

Author SHA1 Message Date
Lephenixnoir 82027e1057
bump version to 2.10.0 2023-04-01 23:51:12 +02:00
Lephenixnoir 7b77fb9c0b
libfxlink: add status functions to avoid looking into fdev fields 2023-04-01 21:35:28 +02:00
Lephenixnoir 394d05726d
fxlink: add missing <unistd.h> to tui/tui-interactive.c 2023-03-28 21:43:59 +02:00
Lephenixnoir 0c0eb7f4f5
libfxlink: use old libusb for compatibility with 1.0.23 2023-03-28 19:35:00 +02:00
Lephenixnoir 1251ca23ee
libfxlink: return status from fxlink_device_start_bulk_{IN,OUT} 2023-03-27 19:47:08 +02:00
Lephenixnoir 1573db3860
libfxlink: install the library 2023-03-27 19:46:29 +02:00
Lephenixnoir 065233387d
split fxlink into library (not installed yet) and executable 2023-03-26 12:20:50 +02:00
Lephenixnoir 3f4aa1e750
fxlink: usable TUI command setup + gintctl test commands 2023-03-26 11:41:55 +02:00
Lephenixnoir cef9d21076
fxlink: start implementing TUI commands (mainly gintctl tests) 2023-03-17 21:32:01 +01:00
Lephenixnoir f83ea7e3d3
fxsdk: restore almost-original CG icon, but with the GIMP template 2023-03-12 22:07:30 +01:00
Lephenixnoir 4b980d949b
fxsdk: another failed attempt at a better CG icon 2023-03-12 20:55:48 +01:00
Lephenixnoir 0a61ffc523
fxlink: basic TUI commands 2023-03-12 20:55:18 +01:00
Lephenixnoir c7c1ec35f7
fxlink: send zero-length packets after commands 2023-03-12 20:54:53 +01:00
Lephenixnoir 3dc9f06219
fxlink: basic writing logic and 'test' command 2023-03-04 18:07:30 +01:00
Lephenixnoir 9d30377d90
fxlink: full rewrite; deeper device management and TUI
This commit rewrites the entire device management layer of fxlink on the
libusb side, providing new abstractions that support live/async device
management, including communication.

This system is put to use in a new TUI interactive mode (fxlink -t)
which can run in the background, connects to calculators automatically
without interfering with file transfer tools, and is much more detailed
in its interface than the previous interactive mode (fxlink -i).

The TUI mode will also soon be extended to support sending data.
2023-03-03 00:29:00 +01:00
Lephenixnoir d6ed47b133
fxsdk: add build-cg-push to default .gitignore 2023-01-19 21:35:22 +01:00
Lephenixnoir ae452c3bc2 Merge pull request 'Add fast push mode' (#10) from Heath123/fxsdk:dev into dev
Reviewed-on: #10
2023-01-19 09:38:12 +01:00
Heath Mitchell 6849c1624e Add push mode 2023-01-17 23:05:38 +00:00
Lephenixnoir 7b2294d8c0
fxsdk: don't generate G3A in fastload, use bin 2023-01-17 10:13:11 +01:00
Lephenixnoir d91e6b7497
fxsdk: add build-cg-push command (no send yet) 2023-01-17 09:58:16 +01:00
Lephenixnoir dc522072e7
fxconv: honor section setting for ASM conversions 2023-01-15 16:32:51 +01:00
Lephenixnoir c9e9f347e4
fxsdk: GIMP icon template and new default icon 2023-01-02 17:56:25 +01:00
Lephenixnoir ebfde1f13d
fxlink: add reconnecting interactive mode (-ir)
This exposes how terrible the libusb code is. Future problem for now.
2022-12-03 13:34:06 +01:00
Lephenixnoir e31d053a08
fxsdk: handle parentheses in paths for fxgxa
Quotes are still impossible because CMake is unredeemable in that
regard.
2022-11-25 10:56:59 +01:00
Lephenixnoir 8c966821e8
fxconv: fix bad detection of fxconv-metadata.txt for relative paths 2022-11-05 18:44:33 +01:00
Lephenixnoir 1a443454c9
fxsdk: provide an FXSDK_TOOLCHAIN variable (= "sh-elf-") 2022-10-29 14:37:28 +02:00
Lephenixnoir db0a54dc25
fxgxa: add missing include 2022-10-04 22:09:30 +02:00
Lephenixnoir a1ee256ba5
bump version to 2.9.2 2022-08-29 21:21:32 +02:00
Lephenixnoir b8e2897560
fxsdk: add an OTHER_MACROS argument to find_simple_library() 2022-08-29 21:20:12 +02:00
Lephenixnoir 38ff1f765b
bump version to 2.9.1 2022-08-29 00:45:10 +02:00
Lephenixnoir 223cd31b6c
fxsdk: compatibility with CMake 3.24 2022-08-29 00:34:55 +02:00
Lephenixnoir 92316b9f5a
bump version to 2.9.0 2022-08-21 19:50:25 +02:00
Lephenixnoir aae8b951c0
fxsdk: add --no-warn-rwx-segments in linker options 2022-08-21 09:40:29 +02:00
Lephenixnoir daf1e865b3
update missing bits in README 2022-08-19 14:52:24 +02:00
Lephenixnoir 147ff08869
fxsdk: add sysroot, support for listdc++, README tutorial, LICENSE
This commit mainly introduces an almost-normal sysroot where the
compiler and libs will be installed. This is done in order to properly
build libstdc++-v3 from the GCC tree while also cleaning up the
slightly chaotic current install system.

* Add an `fxsdk --version` command
* Redo the README like a translation of the French topic
* Up default project to gint 2.9 to help get migrations right
* Add new `fxsdk path` command reporting important folders
* Add new CMake variables FXSDK_SYSROOT, FXSDK_INCLUDE, FXSDK_LIB so
  CMake can access the information of `fxsdk path`
* fxSDK is now in charge of removing the entire sysroot including the
  cross-compiler
* Add a LICENSE file
2022-08-19 14:38:19 +02:00
Lephenixnoir 4296ef0872
fxsdk: adjustment for #9 2022-08-03 21:52:58 +01:00
Lephenixnoir dd6cd3fcd4
fxlink: add a message if `cp` fails 2022-08-03 21:50:15 +01:00
Lephenixnoir 6032ce38cf Merge pull request 'Added a specific charset (extascii) to get access to 256 characters of the ascii table' (#9) from Slyvtt/fxsdk:slyvtt-patch-1 into dev
Reviewed-on: #9
2022-08-03 22:51:13 +02:00
Sylvain PILLOT 2c0815077c Added a specific charset (extascii) to get access to 256 characters of the ascii table
Added the support of extended ascii table (char 128 and aboce up to 255).
2022-08-01 14:40:13 +02:00
Lephenixnoir 1a7939bbb9
fxsdk: fix long-standing typo in default .gitignore 2022-07-16 18:18:57 +01:00
Lephenixnoir a7046966da
fxconv: fix double object file size for RGB565 images 2022-07-16 17:23:14 +01:00
Lephenixnoir 00b85297a3
bump version to 2.8.0 2022-05-16 22:03:29 +01:00
Lephenixnoir e4289f6c4c
fxconv: remove alpha field of images 2022-05-14 12:54:18 +01:00
Lephenixnoir b29c494715
fxconv: rewrite image converter, forcing alpha value 2022-05-14 12:38:52 +01:00
Lephenixnoir 58cb14157d
fxconv: new image format (and libimg stride update) 2022-05-12 15:26:42 +01:00
Lephenixnoir 6fd943ea67
fxconv: simplify alpha assignment in P8/P4
* alpha is now the last color of the palette rather than always being 0.
* alpha is not materialized in the P8 palette.
* Fixed a bug where images with more than 32/256 colors being converted
  in P4/P8 with transparency would use all colors for opaque pixels,
  causing alpha to randomly land on a color index that is in use.
2022-05-07 17:54:20 +01:00
Lephenixnoir 6d2dcea900
fxconv: "p4" and "p8" now select best new format
Instead of p8 being the old p8 (which now doesn't display anymore!) and
p4 being p4_rgb565a.
2022-05-07 14:00:26 +01:00
Lephenixnoir 6788a7b5fe
fxsdk: round RGB16 images to even widths
This allows 4-alignment on the input to be preserved from line to line,
which is very valuable for rendering optimizations.
2022-05-04 17:16:33 +01:00
Lephenixnoir 27e60884c3
fxlink: generate blob names based on application/type 2022-05-01 18:56:52 +01:00
Lephenixnoir 5e004f989e
Cleanup for PR#8 2022-05-01 16:20:47 +01:00