1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-27 15:29:46 +00:00
cc65/samples/geos/geosconio.c
2022-04-17 16:06:45 +02:00

59 lines
1.4 KiB
C

#include <geos.h>
#include <conio.h>
#include <mouse.h>
void main(void)
{
struct mouse_info info;
char ch;
DlgBoxOk("Now the screen will be", "cleared.");
clrscr();
DlgBoxOk("Now a character will be", "written at 20,20");
gotoxy(20, 20);
cputc('A');
DlgBoxOk("Now a string will be", "written at 0,1");
cputsxy(0, 1, CBOLDON "Just" COUTLINEON "a " CITALICON "string." CPLAINTEXT );
DlgBoxOk("Write text and finish it", "with a dot.");
cursor(1);
do {
ch = cgetc();
cputc(ch);
} while (ch!='.');
cursor(0);
DlgBoxOk("Seems that it is all for conio.", "Let's test mouse routines.");
mouse_init(1);
cputsxy(0, 2, CBOLDON "Now you can't see mouse (press any key)" CPLAINTEXT);
mouse_hide();
while (!kbhit()) { };
cputc(cgetc());
cputsxy(0, 3, CBOLDON "Now you see the mouse (press any key)" CPLAINTEXT);
mouse_show();
while (!kbhit()) { };
cputc(cgetc());
// Get the current mouse coordinates and button states and print them
mouse_info(&info);
gotoxy(0, 4);
cprintf("X = %3d", info.pos.x);
gotoxy(0, 5);
cprintf("Y = %3d", info.pos.y);
gotoxy(0, 6);
cprintf("LB = %c", (info.buttons & MOUSE_BTN_LEFT)? '1' : '0');
gotoxy(0, 7);
cprintf("RB = %c", (info.buttons & MOUSE_BTN_RIGHT)? '1' : '0');
DlgBoxOk("Bye,", "Bye.");
}