mirror of
https://github.com/tschak909/platotermClassicMac.git
synced 2024-12-28 03:29:20 +00:00
185 lines
3.6 KiB
C
Executable File
185 lines
3.6 KiB
C
Executable File
/**
|
|
* PLATOTerm64 - A PLATO Terminal for the Commodore 64
|
|
* Based on Steve Peltz's PAD
|
|
*
|
|
* Author: Thomas Cherryhomes <thom.cherryhomes at gmail dot com>
|
|
*
|
|
* screen.h - Display output functions
|
|
*/
|
|
|
|
#ifndef SCREEN_H
|
|
#define SCREEN_H
|
|
|
|
#include "protocol.h"
|
|
|
|
/**
|
|
* screen_init() - Set up the screen
|
|
*/
|
|
void screen_init(void);
|
|
|
|
/**
|
|
* screen_update_menus() - Update menu state
|
|
*/
|
|
void screen_update_menus(void);
|
|
|
|
/**
|
|
* screen_menu_command(menuCommand) - Do menu command.
|
|
*/
|
|
void screen_menu_command(long menu_command);
|
|
|
|
/**
|
|
* screen_show_cursor - Hide mouse cursor
|
|
*/
|
|
void screen_show_cursor(padBool show);
|
|
|
|
/**
|
|
* screen_main(void)
|
|
*/
|
|
void screen_main(void);
|
|
|
|
/**
|
|
* screen_scale_x(x) - Scale PLATO X coordinate to screen
|
|
*/
|
|
short screen_scale_x(short x);
|
|
|
|
/**
|
|
* screen_scale_y(y) - Scale PLATO Y coordinate to screen
|
|
*/
|
|
short screen_scale_y(short x);
|
|
|
|
/**
|
|
* screen_wait(void) - Sleep for approx 16.67ms
|
|
*/
|
|
void screen_wait(void);
|
|
|
|
/**
|
|
* screen_beep(void) - Beep the terminal
|
|
*/
|
|
void screen_beep(void);
|
|
|
|
/**
|
|
* screen_clear_palette - Clear the palette
|
|
*/
|
|
void screen_clear_palette(void);
|
|
|
|
/**
|
|
* screen_clear - Clear the screen
|
|
*/
|
|
void screen_clear(void);
|
|
|
|
/**
|
|
* screen_current_mode(void) - Return current drawing mode
|
|
*/
|
|
short screen_current_mode(void);
|
|
|
|
/**
|
|
* screen_current_color(void) - Set the current pen mode
|
|
*/
|
|
int screen_current_color(void);
|
|
|
|
/**
|
|
* screen_block_draw(Coord1, Coord2) - Perform a block fill from Coord1 to Coord2
|
|
*/
|
|
void screen_block_draw(padPt* Coord1, padPt* Coord2);
|
|
|
|
/**
|
|
* screen_dot_draw(Coord) - Plot a mode 0 pixel
|
|
*/
|
|
void screen_dot_draw(padPt* Coord);
|
|
|
|
/**
|
|
* screen_line_draw(Coord1, Coord2) - Draw a mode 1 line
|
|
*/
|
|
void screen_line_draw(padPt* Coord1, padPt* Coord2);
|
|
|
|
/**
|
|
* screen_char_draw(Coord, ch, count) - Output buffer from ch* of length count as PLATO characters
|
|
*/
|
|
void screen_char_draw(padPt* Coord, unsigned char* ch, unsigned char count);
|
|
|
|
/**
|
|
* screen_tty_char - Called to plot chars when in tty mode
|
|
*/
|
|
void screen_tty_char(unsigned char theChar);
|
|
|
|
/**
|
|
* screen_color_matching(color) - return index of matching color, or a new index,
|
|
* if not found.
|
|
*/
|
|
unsigned char screen_color_matching(padRGB* theColor);
|
|
|
|
/**
|
|
* screen_foreground - Called to set foreground color.
|
|
*/
|
|
void screen_foreground(padRGB* theColor);
|
|
|
|
/**
|
|
* screen_background - Called to set foreground color.
|
|
*/
|
|
void screen_background(padRGB* theColor);
|
|
|
|
/**
|
|
* color_screen_paint - Called to paint at location.
|
|
*/
|
|
void screen_color_paint(padPt* Coord);
|
|
|
|
/**
|
|
* mono_screen_paint - Called to paint at location.
|
|
*/
|
|
void screen_mono_paint(padPt* Coord);
|
|
|
|
/**
|
|
* screen_show_status(msg)
|
|
*/
|
|
void screen_show_status(unsigned char* msg);
|
|
|
|
/**
|
|
* screen_show_baud_rate - Show baud rate
|
|
*/
|
|
void screen_show_baud_rate(int baud);
|
|
|
|
/**
|
|
* screen_show_hang_up - Show hang-up message
|
|
*/
|
|
void screen_show_hang_up(void);
|
|
|
|
/**
|
|
* screen_show_dial - Show dial in TTY mode
|
|
*/
|
|
void screen_show_dial(void);
|
|
|
|
/**
|
|
* screen_show_dialing_status - Show dialing status.
|
|
*/
|
|
void screen_show_dialing_status(void);
|
|
|
|
/**
|
|
* screen_show_help - SHow help
|
|
*/
|
|
void screen_show_help(void);
|
|
|
|
/**
|
|
* screen_trace_status - Show trace status
|
|
*/
|
|
void screen_trace_status(const char* status);
|
|
|
|
/**
|
|
* screen_help_mode_status(void)
|
|
* Put help mode status at bottom of help screen
|
|
*/
|
|
void screen_help_mode_status(void);
|
|
|
|
/**
|
|
* screen_greeting(void)
|
|
* show initial greeting
|
|
*/
|
|
void screen_greeting(void);
|
|
|
|
/**
|
|
* screen_done()
|
|
* Close down TGI
|
|
*/
|
|
void screen_done(void);
|
|
|
|
#endif /* SCREEN_H */
|