nshell/src/main.c

47 lines
2.1 KiB
C

#include <gint/keyboard.h>
#include <gint/timer.h>
#include "term.h"
#include <gint/display.h>
#include "ui.h"
static char *LOREM_IPSUM =
"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam vitae purus dolor. Praesent in ex tempus, auctor velit at, "
"vulputate sapien. Aenean semper, dui vitae iaculis mattis, odio libero aliquet elit, nec tempor nisl turpis vel arcu. "
"Vestibulum eleifend maximus enim at sollicitudin. Nulla eu commodo justo. Ut vitae pellentesque erat. Duis magna nisl, "
"eleifend ac massa at, blandit sollicitudin ipsum. Interdum et malesuada fames ac ante ipsum primis in faucibus. "
"Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut at libero in turpis porttitor "
"viverra. Ut eu pellentesque purus. Vestibulum aliquet facilisis ante, eget volutpat metus. Cras semper lacus ac mauris "
"imperdiet, vel egestas est luctus. Aliquam elit enim, dignissim nec enim vel, consequat ullamcorper libero. Pellentesque at "
"iaculis lctus. Praesent sed velit at tellus hendrerit mattis eu nec velit. Phasellus eu quam nec nisi mattis elementum quis "
"nec enim. Nulla efficitur turpis id tempus ultricies. Pellentesque semper lacinia mi vitae feugiat. Vestibulum leo nisi, "
"pretium quis felis non, mattis varius risus. "
"Suspendisse porttitor purus lacinia ante euismod, ut eleifend massa fermentum. Proin pretium elementum massa, at efficitur "
"risus iaculis sed.";
static volatile int key_poll_timeout;
static int callback_keypoll(void) {
key_poll_timeout = 0;
return TIMER_STOP;
}
int main(void) {
const int timer = timer_configure(TIMER_ANY, 15625, GINT_CALL(callback_keypoll));
int tick_ctr = 0;
while (1) {
tgrid_sets(1, 0, C_WHITE, C_BLACK, LOREM_IPSUM);
set_statusbar(tick_ctr);
set_menubar();
tgrid_display();
key_poll_timeout = 1;
key_event_t kev = getkey_opt(GETKEY_DEFAULT, &key_poll_timeout);
timer_start(timer);
if (kev.type != KEYEV_NONE)
tick_ctr++;
}
return 1;
}