import lisp-programs, start working on picocalc editor
This commit is contained in:
@@ -519,50 +519,11 @@ fn_sd_list(object *args, object *env)
|
||||
* Only works on the PicoCalc...
|
||||
*/
|
||||
#if defined(PLATFORM_PICOCALC)
|
||||
char
|
||||
getkey()
|
||||
{
|
||||
PCKeyboard::KeyEvent kevt;
|
||||
char keypress;
|
||||
#define KEYPAD_DIR_UP 3
|
||||
#define KEYPAD_DIR_DOWN 15
|
||||
#define KEYPAD_DIR_LEFT 1
|
||||
#define KEYPAD_DIR_RIGHT 2
|
||||
|
||||
do {
|
||||
kevt = pc_kbd.keyEvent();
|
||||
|
||||
if (kevt.state == PCKeyboard::StatePress) {
|
||||
if (kevt.key == 6) {
|
||||
continue;
|
||||
}
|
||||
|
||||
keypress = kevt.key;
|
||||
break;
|
||||
}
|
||||
} while (pc_kbd.keyCount() == 0);
|
||||
|
||||
|
||||
do {
|
||||
kevt = pc_kbd.keyEvent();
|
||||
} while (kevt.state != PCKeyboard::StateRelease);
|
||||
|
||||
switch (keypress) {
|
||||
case 177:
|
||||
keypress = 27;
|
||||
break;
|
||||
default:
|
||||
// do nothing
|
||||
break;
|
||||
}
|
||||
|
||||
return keypress;
|
||||
}
|
||||
|
||||
object *
|
||||
fn_get_key(object *args, object *env)
|
||||
{
|
||||
(void) args;
|
||||
(void) env;
|
||||
|
||||
return character(getkey());
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
@@ -842,8 +803,7 @@ initPlatform()
|
||||
void
|
||||
initPlatform()
|
||||
{
|
||||
initTouch();
|
||||
inittrackball();
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -875,7 +835,7 @@ const char stringsd_dir[] PROGMEM = "sd-list";
|
||||
#endif
|
||||
|
||||
#if defined(PLATFORM_PICOCALC)
|
||||
const char string_get_key[] PROGMEM = "get-key";
|
||||
|
||||
#elif defined(TDECK_PERI_POWERON)
|
||||
const char string_gettouchpoints[] PROGMEM = "get-touch-points";
|
||||
const char stringKeyboardGetKey[] PROGMEM = "keyboard-get-key";
|
||||
@@ -955,8 +915,6 @@ const char docsd_rmdir[] PROGMEM = "(sd-remove-dir directory)\n"
|
||||
|
||||
// PicoCalc-specific doc strings
|
||||
#if defined(PLATFORM_PICOCALC)
|
||||
const char doc_get_key[] PROGMEM = "(get-key)\n"
|
||||
"Waits for a keypress event, then returns the key.";
|
||||
|
||||
// T-Deck-specific doc strings
|
||||
#elif defined(TDECK_PERI_POWERON)
|
||||
@@ -994,7 +952,7 @@ const tbl_entry_t lookup_table2[] PROGMEM = {
|
||||
#endif
|
||||
|
||||
#if defined(PLATFORM_PICOCALC)
|
||||
{ string_get_key, fn_get_key, 0200, doc_get_key },
|
||||
|
||||
#elif defined(TDECK_PERI_POWERON)
|
||||
{ string_gettouchpoints, fn_get_touch_points, 0200, doc_gettouchpoints },
|
||||
{ stringKeyboardGetKey, fn_KeyboardGetKey, 0201, docKeyboardGetKey },
|
||||
|
||||
Reference in New Issue
Block a user