|
ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
|
#include "../ugbc.h"Go to the source code of this file.
Typedefs | |
| typedef void(* | Tms9918SliceImageFunction) (Environment *, char *, char *, char *, int, int, char *) |
Functions | |
| int | cga_screen_mode_enable (Environment *_environment, ScreenMode *_screen_mode) |
| void | cga_initialization (Environment *_environment) |
| void | cga_finalization (Environment *_environment) |
| void | cga_back (Environment *_environment) |
| void | cga_background_color (Environment *_environment, int _index, int _background_color) |
| CGA: emit code to change background color | |
| void | cga_background_color_vars (Environment *_environment, char *_index, char *_background_color) |
| CGA: emit code to change background color | |
| void | cga_background_color_semivars (Environment *_environment, int _index, char *_background_color) |
| CGA: emit code to change background color | |
| void | cga_colors_vars (Environment *_environment, char *_foreground_color, char *_background_color) |
| void | cga_background_color_get_vars (Environment *_environment, char *_index, char *_background_color) |
| CGA: emit code to retrieve background color | |
| void | cga_border_color (Environment *_environment, char *_border_color) |
| CGA: emit code to change border color | |
| Variable * | cga_collision (Environment *_environment, char *_sprite) |
| void | cga_hit (Environment *_environment, char *_sprite_mask, char *_result) |
| CGA: emit code to check for collision | |
| void | cga_next_raster (Environment *_environment) |
| CGA: emit code to wait for next raster irq | |
| void | cga_next_raster_at (Environment *_environment, char *_label, char *_positionlo, char *_positionhi) |
| CGA: emit code to wait for next raster irq at different position | |
| void | cga_raster_at (Environment *_environment, char *_label, char *_positionlo, char *_positionhi) |
| CGA: emit code to set raster irq | |
| void | cga_sprite_common_color (Environment *_environment, char *_index, char *_common_color) |
| CGA: emit code to change common sprite's color | |
| void | cga_bitmap_enable (Environment *_environment, int _width, int _height, int _colors) |
| void | cga_bitmap_disable (Environment *_environment) |
| void | cga_bitmap_at (Environment *_environment, char *_address) |
| void | cga_colormap_at (Environment *_environment, char *_address) |
| void | cga_textmap_at (Environment *_environment, char *_address) |
| void | cga_tiles_at (Environment *_environment, char *_address) |
| void | cga_tilemap_enable (Environment *_environment, int _width, int _height, int _colors, int _tile_width, int _tile_height) |
| void | cga_bank_select (Environment *_environment, int _bank) |
| void | cga_screen_on (Environment *_environment) |
| void | cga_screen_off (Environment *_environment) |
| void | cga_screen_rows (Environment *_environment, char *_rows) |
| void | cga_screen_columns (Environment *_environment, char *_columns) |
| void | cga_sprite_data_from (Environment *_environment, char *_sprite, char *_image) |
| void | cga_sprite_data_set (Environment *_environment, char *_sprite, char *_image) |
| void | cga_sprite_enable (Environment *_environment, char *_sprite) |
| void | cga_sprite_disable (Environment *_environment, char *_sprite) |
| void | cga_sprite_at (Environment *_environment, char *_sprite, char *_x, char *_y) |
| void | cga_sprite_expand_vertical (Environment *_environment, char *_sprite) |
| void | cga_sprite_expand_horizontal (Environment *_environment, char *_sprite) |
| void | cga_sprite_compress_vertical (Environment *_environment, char *_sprite) |
| void | cga_sprite_compress_horizontal (Environment *_environment, char *_sprite) |
| void | cga_sprite_multicolor (Environment *_environment, char *_sprite) |
| void | cga_sprite_monocolor (Environment *_environment, char *_sprite) |
| void | cga_sprite_color (Environment *_environment, char *_sprite, char *_color) |
| void | cga_sprite_priority (Environment *_environment, char *_sprite, char *_priority) |
| void | cga_vertical_scroll (Environment *_environment, char *_displacement) |
| void | cga_horizontal_scroll (Environment *_environment, char *_displacement) |
| void | cga_busy_wait (Environment *_environment, char *_timing) |
| void | cga_tiles_get (Environment *_environment, char *_result) |
| void | cga_get_width (Environment *_environment, char *_result) |
| void | cga_get_height (Environment *_environment, char *_result) |
| void | cga_pset_int (Environment *_environment, int _x, int _y, int *_c) |
| void | cga_pset_vars (Environment *_environment, char *_x, char *_y, char *_c) |
| void | cga_pget_color_vars (Environment *_environment, char *_x, char *_y, char *_result) |
| void | cga_cls (Environment *_environment) |
| void | cga_cls_box (Environment *_environment, char *_x1, char *_y1, char *_w, char *_h) |
| void | cga_scroll_text (Environment *_environment, int _direction, int _overlap) |
| void | cga_hscroll_line (Environment *_environment, int _direction, int _overlap) |
| void | cga_hscroll_screen (Environment *_environment, int _direction, int _overlap) |
| void | cga_text (Environment *_environment, char *_text, char *_text_size, int _raw) |
| void | cga_cline (Environment *_environment, char *_characters) |
| void | cga_scroll (Environment *_environment, int _dx, int _dy) |
| void | cga_calculate_sequence_frame_offset (Environment *_environment, char *_offset, char *_sequence, char *_frame, int _frame_size, int _frame_count) |
| Variable * | cga_get_raster_line (Environment *_environment) |
| int | cga_image_size (Environment *_environment, int _width, int _height, int _mode) |
| Variable * | cga_image_converter (Environment *_environment, char *_data, int _width, int _height, int _depth, int _offset_x, int _offset_y, int _frame_width, int _frame_height, int _mode, int _transparent_color, int _flags) |
| Variable * | cga_sprite_converter (Environment *_environment, char *_data, int _width, int _height, int _depth, RGBi *_color, int _x_slot, int _y_slot) |
| void | cga_put_image (Environment *_environment, Resource *_image, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_flags) |
| void | cga_blit_image (Environment *_environment, char *_sources[], int _source_count, char *_blit, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, int _flags) |
| void | cga_wait_vbl (Environment *_environment) |
| Variable * | cga_new_image (Environment *_environment, int _width, int _height, int _mode) |
| Variable * | cga_new_images (Environment *_environment, int _frames, int _width, int _height, int _mode) |
| Variable * | cga_new_sequence (Environment *_environment, int _sequences, int _frames, int _width, int _height, int _mode) |
| void | cga_get_image (Environment *_environment, char *_image, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, int _palette) |
| void | cga_put_tile (Environment *_environment, char *_image, char *_x, char *_y) |
| void | cga_put_tiles (Environment *_environment, char *_image, char *_x, char *_y, char *_w, char *_h) |
| void | cga_move_tiles (Environment *_environment, char *_image, char *_x, char *_y) |
| void | cga_use_tileset (Environment *_environment, char *_tileset) |
| void | cga_tile_at (Environment *_environment, char *_x, char *_y, char *_result) |
| void | cga_move_memory_video (Environment *_environment, char *_from, char *_to, char *_size) |
| void | cga_move_video_memory (Environment *_environment, char *_from, char *_to, char *_size) |
| void | cga_move_video_video (Environment *_environment, char *_from, char *_to, char *_size) |
| void | cga_slice_image_copy (Environment *_environment, char *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_destination) |
| void | cga_slice_image_extract (Environment *_environment, char *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_destination) |
| int | cga_palette_extract (Environment *_environment, char *_data, int _width, int _height, int _depth, int _flags, RGBi *_palette) |
| void | cga_flip_image (Environment *_environment, Resource *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_direction) |
| void | cga_screen (Environment *_environment, char *_x, char *_y, char *_c) |
| #define BITMAP_MODE_DEFAULT BITMAP_MODE_STANDARD |
| #define BITMAP_MODE_STANDARD BITMAP_MODE_320x200x4 |
| #define COLOR_DARK_GREY COLOR_DARK_WHITE |
| #define COLOR_GOLD COLOR_YELLOW |
| #define COLOR_LAVENDER COLOR_VIOLET |
| #define COLOR_LIGHT_BLUE COLOR_BLUE |
| #define COLOR_LIGHT_GREEN COLOR_GREEN |
| #define COLOR_LIGHT_GREY COLOR_GREY |
| #define COLOR_LIGHT_WHITE COLOR_WHITE |
| #define COLOR_OLIVE_GREEN COLOR_GREEN |
| #define COLOR_ORANGE COLOR_LIGHT_RED |
| #define COLOR_PEACH COLOR_PINK |
| #define COLOR_PINK COLOR_LIGHT_RED |
| #define COLOR_PURPLE COLOR_VIOLET |
| #define COLOR_TAN COLOR_BROWN |
| #define COLOR_TURQUOISE COLOR_LIGHT_BLUE |
| #define COLOR_YELLOW_GREEN COLOR_LIGHT_GREEN |
| #define DEFAULT_PAPER_COLOR COLOR_BLACK |
| #define DEFAULT_PEN_COLOR COLOR_WHITE |
| #define TILEMAP_MODE_STANDARD TILEMAP_MODE_40x25x16 |
| typedef void(* Tms9918SliceImageFunction) (Environment *, char *, char *, char *, int, int, char *) |
| void cga_back | ( | Environment * | _environment | ) |
| void cga_background_color | ( | Environment * | _environment, |
| int | _index, | ||
| int | _background_color ) |
CGA: emit code to change background color
This function can be used to issue code aimed at changing the background color of the screen.
| _environment | Current calling environment |
| _index | Index of the background color |
| _background_color | Background color to use |
| void cga_background_color_get_vars | ( | Environment * | _environment, |
| char * | _index, | ||
| char * | _background_color ) |
CGA: emit code to retrieve background color
This function can be used to issue code aimed at retrieving the background color of the screen.
| _environment | Current calling environment |
| _index | Index of the background color |
| _background_color | Background color to use |
| void cga_background_color_semivars | ( | Environment * | _environment, |
| int | _index, | ||
| char * | _background_color ) |
CGA: emit code to change background color
This function can be used to issue code aimed at changing the background color of the screen.
| _environment | Current calling environment |
| _index | Index of the background color |
| _background_color | Background color to use |
| void cga_background_color_vars | ( | Environment * | _environment, |
| char * | _index, | ||
| char * | _background_color ) |
CGA: emit code to change background color
This function can be used to issue code aimed at changing the background color of the screen.
| _environment | Current calling environment |
| _index | Index of the background color |
| _background_color | Background color to use |
| void cga_bank_select | ( | Environment * | _environment, |
| int | _bank ) |
| void cga_bitmap_at | ( | Environment * | _environment, |
| char * | _address ) |
| void cga_bitmap_disable | ( | Environment * | _environment | ) |
| void cga_bitmap_enable | ( | Environment * | _environment, |
| int | _width, | ||
| int | _height, | ||
| int | _colors ) |
| void cga_blit_image | ( | Environment * | _environment, |
| char * | _sources[], | ||
| int | _source_count, | ||
| char * | _blit, | ||
| char * | _x, | ||
| char * | _y, | ||
| char * | _frame, | ||
| char * | _sequence, | ||
| int | _frame_size, | ||
| int | _frame_count, | ||
| int | _flags ) |
| void cga_border_color | ( | Environment * | _environment, |
| char * | _border_color ) |
| void cga_busy_wait | ( | Environment * | _environment, |
| char * | _timing ) |
| void cga_calculate_sequence_frame_offset | ( | Environment * | _environment, |
| char * | _offset, | ||
| char * | _sequence, | ||
| char * | _frame, | ||
| int | _frame_size, | ||
| int | _frame_count ) |
| void cga_cline | ( | Environment * | _environment, |
| char * | _characters ) |
| void cga_cls | ( | Environment * | _environment | ) |
| void cga_cls_box | ( | Environment * | _environment, |
| char * | _x1, | ||
| char * | _y1, | ||
| char * | _w, | ||
| char * | _h ) |
| Variable * cga_collision | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_colormap_at | ( | Environment * | _environment, |
| char * | _address ) |
| void cga_colors_vars | ( | Environment * | _environment, |
| char * | _foreground_color, | ||
| char * | _background_color ) |
| void cga_finalization | ( | Environment * | _environment | ) |
| void cga_flip_image | ( | Environment * | _environment, |
| Resource * | _image, | ||
| char * | _frame, | ||
| char * | _sequence, | ||
| int | _frame_size, | ||
| int | _frame_count, | ||
| char * | _direction ) |
| void cga_get_height | ( | Environment * | _environment, |
| char * | _result ) |
| void cga_get_image | ( | Environment * | _environment, |
| char * | _image, | ||
| char * | _x, | ||
| char * | _y, | ||
| char * | _frame, | ||
| char * | _sequence, | ||
| int | _frame_size, | ||
| int | _frame_count, | ||
| int | _palette ) |
| Variable * cga_get_raster_line | ( | Environment * | _environment | ) |
| void cga_get_width | ( | Environment * | _environment, |
| char * | _result ) |
| void cga_hit | ( | Environment * | _environment, |
| char * | _sprite_mask, | ||
| char * | _result ) |
CGA: emit code to check for collision
This function can be used to issue code aimed at verifying if a sprite has had a collision with a tile. The result (0 = no collision, 0xff = collision occurred) is returned in the output variable.
| _environment | Current calling environment |
| _sprite_mask | Sprite mask to use |
| _result | Where to store the result |
| void cga_horizontal_scroll | ( | Environment * | _environment, |
| char * | _displacement ) |
| void cga_hscroll_line | ( | Environment * | _environment, |
| int | _direction, | ||
| int | _overlap ) |
| void cga_hscroll_screen | ( | Environment * | _environment, |
| int | _direction, | ||
| int | _overlap ) |
| Variable * cga_image_converter | ( | Environment * | _environment, |
| char * | _data, | ||
| int | _width, | ||
| int | _height, | ||
| int | _depth, | ||
| int | _offset_x, | ||
| int | _offset_y, | ||
| int | _frame_width, | ||
| int | _frame_height, | ||
| int | _mode, | ||
| int | _transparent_color, | ||
| int | _flags ) |
| int cga_image_size | ( | Environment * | _environment, |
| int | _width, | ||
| int | _height, | ||
| int | _mode ) |
| void cga_initialization | ( | Environment * | _environment | ) |
| void cga_move_memory_video | ( | Environment * | _environment, |
| char * | _from, | ||
| char * | _to, | ||
| char * | _size ) |
| void cga_move_tiles | ( | Environment * | _environment, |
| char * | _image, | ||
| char * | _x, | ||
| char * | _y ) |
| void cga_move_video_memory | ( | Environment * | _environment, |
| char * | _from, | ||
| char * | _to, | ||
| char * | _size ) |
| void cga_move_video_video | ( | Environment * | _environment, |
| char * | _from, | ||
| char * | _to, | ||
| char * | _size ) |
| Variable * cga_new_image | ( | Environment * | _environment, |
| int | _width, | ||
| int | _height, | ||
| int | _mode ) |
| Variable * cga_new_images | ( | Environment * | _environment, |
| int | _frames, | ||
| int | _width, | ||
| int | _height, | ||
| int | _mode ) |
| Variable * cga_new_sequence | ( | Environment * | _environment, |
| int | _sequences, | ||
| int | _frames, | ||
| int | _width, | ||
| int | _height, | ||
| int | _mode ) |
| void cga_next_raster | ( | Environment * | _environment | ) |
| void cga_next_raster_at | ( | Environment * | _environment, |
| char * | _label, | ||
| char * | _positionlo, | ||
| char * | _positionhi ) |
CGA: emit code to wait for next raster irq at different position
This function outputs assembly code needed to wait for the next raster on a different position with a different code to execute. Meanwhile, the execution of the main code will resume where it left off.
| _environment | Current calling environment |
| _label | Label to jump to when vertical raster reach the value given |
| _positionlo | The vertical position to wait for (bits 7..0) |
| _positionhi | The vertical position to wait for (bit 8) |
| int cga_palette_extract | ( | Environment * | _environment, |
| char * | _data, | ||
| int | _width, | ||
| int | _height, | ||
| int | _depth, | ||
| int | _flags, | ||
| RGBi * | _palette ) |
| void cga_pget_color_vars | ( | Environment * | _environment, |
| char * | _x, | ||
| char * | _y, | ||
| char * | _result ) |
| void cga_pset_int | ( | Environment * | _environment, |
| int | _x, | ||
| int | _y, | ||
| int * | _c ) |
| void cga_pset_vars | ( | Environment * | _environment, |
| char * | _x, | ||
| char * | _y, | ||
| char * | _c ) |
| void cga_put_image | ( | Environment * | _environment, |
| Resource * | _image, | ||
| char * | _x, | ||
| char * | _y, | ||
| char * | _frame, | ||
| char * | _sequence, | ||
| int | _frame_size, | ||
| int | _frame_count, | ||
| char * | _flags ) |
| void cga_put_tile | ( | Environment * | _environment, |
| char * | _image, | ||
| char * | _x, | ||
| char * | _y ) |
| void cga_put_tiles | ( | Environment * | _environment, |
| char * | _image, | ||
| char * | _x, | ||
| char * | _y, | ||
| char * | _w, | ||
| char * | _h ) |
| void cga_raster_at | ( | Environment * | _environment, |
| char * | _label, | ||
| char * | _positionlo, | ||
| char * | _positionhi ) |
CGA: emit code to set raster irq
This function outputs assembly code needed to initialize a raster routine. In other words, asynchronously and in parallel with the execution of the main program, the routine starting from the label provided will be executed when the vertical brush on the screen reaches the value of _position. This function is particularly useful when the position is communicated is given as an integer.
| _environment | Current calling environment |
| _label | Label to jump to when vertical raster reach the value given |
| _positionlo | The vertical position to wait for (bits 7..0) |
| _positionhi | The vertical position to wait for (bit 8) |
| void cga_screen | ( | Environment * | _environment, |
| char * | _x, | ||
| char * | _y, | ||
| char * | _c ) |
| void cga_screen_columns | ( | Environment * | _environment, |
| char * | _columns ) |
| int cga_screen_mode_enable | ( | Environment * | _environment, |
| ScreenMode * | _screen_mode ) |
| void cga_screen_off | ( | Environment * | _environment | ) |
| void cga_screen_on | ( | Environment * | _environment | ) |
| void cga_screen_rows | ( | Environment * | _environment, |
| char * | _rows ) |
| void cga_scroll | ( | Environment * | _environment, |
| int | _dx, | ||
| int | _dy ) |
| void cga_scroll_text | ( | Environment * | _environment, |
| int | _direction, | ||
| int | _overlap ) |
| void cga_slice_image_copy | ( | Environment * | _environment, |
| char * | _image, | ||
| char * | _frame, | ||
| char * | _sequence, | ||
| int | _frame_size, | ||
| int | _frame_count, | ||
| char * | _destination ) |
| void cga_slice_image_extract | ( | Environment * | _environment, |
| char * | _image, | ||
| char * | _frame, | ||
| char * | _sequence, | ||
| int | _frame_size, | ||
| int | _frame_count, | ||
| char * | _destination ) |
| void cga_sprite_at | ( | Environment * | _environment, |
| char * | _sprite, | ||
| char * | _x, | ||
| char * | _y ) |
| void cga_sprite_color | ( | Environment * | _environment, |
| char * | _sprite, | ||
| char * | _color ) |
| void cga_sprite_common_color | ( | Environment * | _environment, |
| char * | _index, | ||
| char * | _common_color ) |
CGA: emit code to change common sprite's color
This function can be used to issue code aimed at changing the common color of the sprites.
| _environment | Current calling environment |
| _index | Index of the background color |
| _common_color | Index of the color to use |
| void cga_sprite_compress_horizontal | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_compress_vertical | ( | Environment * | _environment, |
| char * | _sprite ) |
| Variable * cga_sprite_converter | ( | Environment * | _environment, |
| char * | _data, | ||
| int | _width, | ||
| int | _height, | ||
| int | _depth, | ||
| RGBi * | _color, | ||
| int | _x_slot, | ||
| int | _y_slot ) |
| void cga_sprite_data_from | ( | Environment * | _environment, |
| char * | _sprite, | ||
| char * | _image ) |
| void cga_sprite_data_set | ( | Environment * | _environment, |
| char * | _sprite, | ||
| char * | _image ) |
| void cga_sprite_disable | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_enable | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_expand_horizontal | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_expand_vertical | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_monocolor | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_multicolor | ( | Environment * | _environment, |
| char * | _sprite ) |
| void cga_sprite_priority | ( | Environment * | _environment, |
| char * | _sprite, | ||
| char * | _priority ) |
| void cga_text | ( | Environment * | _environment, |
| char * | _text, | ||
| char * | _text_size, | ||
| int | _raw ) |
| void cga_textmap_at | ( | Environment * | _environment, |
| char * | _address ) |
| void cga_tile_at | ( | Environment * | _environment, |
| char * | _x, | ||
| char * | _y, | ||
| char * | _result ) |
| void cga_tilemap_enable | ( | Environment * | _environment, |
| int | _width, | ||
| int | _height, | ||
| int | _colors, | ||
| int | _tile_width, | ||
| int | _tile_height ) |
| void cga_tiles_at | ( | Environment * | _environment, |
| char * | _address ) |
| void cga_tiles_get | ( | Environment * | _environment, |
| char * | _result ) |
| void cga_use_tileset | ( | Environment * | _environment, |
| char * | _tileset ) |
| void cga_vertical_scroll | ( | Environment * | _environment, |
| char * | _displacement ) |
| void cga_wait_vbl | ( | Environment * | _environment | ) |