2016-05-05 12:12:42 +02:00
|
|
|
gint project
|
|
|
|
============
|
|
|
|
|
2016-05-05 13:30:49 +02:00
|
|
|
gint (pronounce 'guin') is a low-level library for fx-9860G calculators. It
|
2016-05-05 12:12:42 +02:00
|
|
|
provides the tools needed to develop programs under Linux using the gcc
|
|
|
|
toolchain (sh3eb-elf).
|
|
|
|
|
|
|
|
By the way, gint is free software ; you may use it for any purpose, share it,
|
|
|
|
modify it and share you changes. No credit of any kind is needed, though
|
|
|
|
appreciated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Interrupt handler
|
|
|
|
-----------------
|
|
|
|
|
|
|
|
The interrupt handler is the lowest-level part of the library. It directly
|
|
|
|
accesses the peripheral modules and performs keyboard analyzes, swaps screen buffers, etc.
|
|
|
|
|
|
|
|
gint does not allow user programs to use their own handlers. However, it is
|
|
|
|
possible to map interrupt-driven events to user callbacks using the public API
|
|
|
|
(which is not possible with the system's interrupt handler). This may be
|
|
|
|
particularly useful for timers and RTC (the 16 Hz interrupt can be used as a
|
|
|
|
basis for a physical engine).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Public Interface
|
|
|
|
----------------
|
|
|
|
|
|
|
|
gint's API provides access to keyboard, timers, clock and more. It does some
|
|
|
|
powerful drawing and offers reliable multi-getkey, a gray engine, facilitates
|
|
|
|
register access and implements a few standard functions.
|
2016-05-05 13:30:49 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Building and installing
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
The easiest way to build gint is simply to enter a terminal and execute `make`.
|
|
|
|
This will build the following components :
|
|
|
|
* `libgint.a`, the gint library
|
|
|
|
* `libc.a`, a (very) few standard procedures
|
|
|
|
* `ginttest.g1a`, a test application
|
|
|
|
|
|
|
|
The common `clean`, `mrproper`, and `distclean` rules will clean the directory.
|