ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
ef936x.h File Reference
#include "../ugbc.h"

Go to the source code of this file.

Macros

#define COLOR_BLACK   0
#define COLOR_WHITE   1
#define COLOR_DARK_RED   2
#define COLOR_RED   2
#define COLOR_CYAN   3
#define COLOR_VIOLET   4
#define COLOR_DARK_GREEN   5
#define COLOR_GREEN   5
#define COLOR_DARK_BLUE   6
#define COLOR_BLUE   6
#define COLOR_YELLOW   7
#define COLOR_ORANGE   8
#define COLOR_BROWN   9
#define COLOR_LIGHT_RED   10
#define COLOR_DARK_GREY   11
#define COLOR_GREY   12
#define COLOR_LIGHT_GREEN   13
#define COLOR_LIGHT_BLUE   14
#define COLOR_LIGHT_GREY   15
#define COLOR_MAGENTA   COLOR_RED
#define COLOR_PURPLE   COLOR_VIOLET
#define COLOR_LAVENDER   COLOR_VIOLET
#define COLOR_GOLD   COLOR_YELLOW
#define COLOR_TURQUOISE   COLOR_LIGHT_BLUE
#define COLOR_TAN   COLOR_BROWN
#define COLOR_YELLOW_GREEN   COLOR_YELLOW
#define COLOR_OLIVE_GREEN   COLOR_GREEN
#define COLOR_PINK   COLOR_LIGHT_RED
#define COLOR_PEACH   COLOR_PINK
#define COLOR_DARK_WHITE   COLOR_GREY
#define COLOR_LIGHT_WHITE   COLOR_WHITE
#define COLOR_COUNT   16
#define DEFAULT_PEN_COLOR   COLOR_WHITE
#define DEFAULT_PAPER_COLOR   COLOR_BLACK
#define BITMAP_MODE_40_COLUMN   0
#define BITMAP_MODE_80_COLUMN   1
#define BITMAP_MODE_BITMAP_4   2
#define BITMAP_MODE_BITMAP_16   3
#define BITMAP_MODE_PAGE   4
#define BITMAP_MODE_DEFAULT   BITMAP_MODE_BITMAP_4
#define BITMAP_MODE_STANDARD   BITMAP_MODE_DEFAULT
#define SPRITE_COUNT   0
#define SPRITE_WIDTH   0
#define SPRITE_HEIGHT   0
#define SPRITE_X_MIN   0
#define SPRITE_Y_MIN   0
#define SPRITE_X_MAX   0
#define SPRITE_Y_MAX   0
#define SCREEN_SPRITE_RATIO_X   100
#define SCREEN_SPRITE_RATIO_Y   100
#define SCREEN_BORDER_X   0
#define SCREEN_BORDER_Y   0
#define IMAGE_WIDTH_SIZE   2
#define IMAGE_WIDTH_OFFSET   0
#define IMAGE_HEIGHT_SIZE   1
#define IMAGE_HEIGHT_OFFSET   2
#define TEXT_COLUMNS_COUNT   40
#define TEXT_ROWS_COUNT   25
#define DOUBLE_BUFFER_PAGE_0   0
#define DOUBLE_BUFFER_PAGE_1   1

Functions

int ef936x_screen_mode_enable (Environment *_environment, ScreenMode *_screen_mode)
void ef936x_initialization (Environment *_environment)
void ef936x_finalization (Environment *_environment)
void ef936x_back (Environment *_environment)
void ef936x_background_color (Environment *_environment, int _index, int _background_color)
 VIC-II: emit code to change background color
void ef936x_background_color_semivars (Environment *_environment, int _index, char *_background_color)
 VIC-II: emit code to change background color
void ef936x_background_color_vars (Environment *_environment, char *_index, char *_background_color)
 VIC-II: emit code to change background color
void ef936x_background_color_get_vars (Environment *_environment, char *_index, char *_background_color)
 VIC-II: emit code to change background color
void ef936x_border_color (Environment *_environment, char *_border_color)
 VIC-II: emit code to change border color
void ef936x_collision (Environment *_environment, char *_sprite_mask, char *_result)
 VIC-II: emit code to check for collision
void ef936x_hit (Environment *_environment, char *_sprite_mask, char *_result)
 VIC-II: emit code to check for collision
void ef936x_next_raster (Environment *_environment)
 VIC-II: emit code to wait for next raster irq
void ef936x_next_raster_at (Environment *_environment, char *_label, char *_positionlo, char *_positionhi)
 VIC-II: emit code to wait for next raster irq at different position
void ef936x_raster_at (Environment *_environment, char *_label, char *_positionlo, char *_positionhi)
 VIC-II: emit code to set raster irq
void ef936x_sprite_common_color (Environment *_environment, char *_index, char *_common_color)
 VIC-II: emit code to change common sprite's color
void ef936x_bitmap_enable (Environment *_environment, int _width, int _height, int _colors)
void ef936x_bitmap_disable (Environment *_environment)
void ef936x_bitmap_at (Environment *_environment, char *_address)
void ef936x_colormap_at (Environment *_environment, char *_address)
void ef936x_textmap_at (Environment *_environment, char *_address)
void ef936x_tiles_at (Environment *_environment, char *_address)
void ef936x_tilemap_enable (Environment *_environment, int _width, int _height, int _colors, int _tile_width, int _tile_height)
void ef936x_bank_select (Environment *_environment, int _bank)
void ef936x_screen_on (Environment *_environment)
void ef936x_screen_off (Environment *_environment)
void ef936x_screen_rows (Environment *_environment, char *_rows)
void ef936x_screen_columns (Environment *_environment, char *_columns)
void ef936x_sprite_data_from (Environment *_environment, char *_sprite, char *_address)
void ef936x_sprite_data_set (Environment *_environment, char *_sprite, char *_address)
void ef936x_sprite_enable (Environment *_environment, char *_sprite)
void ef936x_sprite_disable (Environment *_environment, char *_sprite)
void ef936x_sprite_at (Environment *_environment, char *_sprite, char *_x, char *_y)
void ef936x_sprite_expand_vertical (Environment *_environment, char *_sprite)
void ef936x_sprite_expand_horizontal (Environment *_environment, char *_sprite)
void ef936x_sprite_compress_vertical (Environment *_environment, char *_sprite)
void ef936x_sprite_compress_horizontal (Environment *_environment, char *_sprite)
void ef936x_sprite_multicolor (Environment *_environment, char *_sprite)
void ef936x_sprite_monocolor (Environment *_environment, char *_sprite)
void ef936x_sprite_color (Environment *_environment, char *_sprite, char *_color)
void ef936x_sprite_priority (Environment *_environment, char *_sprite, char *_priority)
void ef936x_vertical_scroll (Environment *_environment, char *_displacement)
void ef936x_horizontal_scroll (Environment *_environment, char *_displacement)
void ef936x_tiles_get (Environment *_environment, char *_result)
void ef936x_get_width (Environment *_environment, char *_result)
void ef936x_get_height (Environment *_environment, char *_result)
void ef936x_pset_int (Environment *_environment, int _x, int _y, int *_c)
void ef936x_pset_vars (Environment *_environment, char *_x, char *_y, char *_c)
void ef936x_pget_color_vars (Environment *_environment, char *_x, char *_y, char *_result)
void ef936x_cls (Environment *_environment)
void ef936x_cls_box (Environment *_environment, char *_x1, char *_y1, char *_w, char *_h)
void ef936x_scroll_text (Environment *_environment, int _direction, int _overlap)
void ef936x_hscroll_line (Environment *_environment, int _direction, int _overlap)
void ef936x_hscroll_screen (Environment *_environment, int _direction, int _overlap)
void ef936x_text (Environment *_environment, char *_text, char *_text_size, int _raw)
void ef936x_cline (Environment *_environment, char *_characters)
void ef936x_scroll (Environment *_environment, int _dx, int _dy)
Variableef936x_get_raster_line (Environment *_environment)
int ef936x_image_size (Environment *_environment, int _width, int _height, int _mode)
Variableef936x_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)
void ef936x_put_image (Environment *_environment, Resource *_image, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_flags)
void ef936x_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)
Variableef936x_new_image (Environment *_environment, int _width, int _height, int _mode)
Variableef936x_new_images (Environment *_environment, int _frames, int _width, int _height, int _mode)
Variableef936x_new_sequence (Environment *_environment, int _sequences, int _frames, int _width, int _height, int _mode)
void ef936x_get_image (Environment *_environment, char *_image, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, int _palette)
void ef936x_calculate_sequence_frame_offset (Environment *_environment, char *_offset, char *_sequence, char *_frame, int _frame_size, int _frame_count)
void ef936x_calculate_sequence_frame_offset_regy (Environment *_environment, char *_sequence, char *_frame, int _frame_size, int _frame_count)
void ef936x_put_tile (Environment *_environment, char *_image, char *_x, char *_y)
void ef936x_put_tiles (Environment *_environment, char *_image, char *_x, char *_y, char *_w, char *_h)
void ef936x_move_tiles (Environment *_environment, char *_image, char *_x, char *_y)
void ef936x_use_tileset (Environment *_environment, char *_tileset)
void ef936x_tile_at (Environment *_environment, char *_x, char *_y, char *_result)
void ef936x_slice_image (Environment *_environment, char *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_destination)
int ef936x_palette_extract (Environment *_environment, char *_data, int _width, int _height, int _depth, int _flags, RGBi *_palette)
void ef936x_flip_image (Environment *_environment, Resource *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_direction)
void ef936x_fade_in (Environment *_environment, char *_period)
void ef936x_fade_out (Environment *_environment, char *_period)
void ef936x_fade_in_color (Environment *_environment, int _index, int _background_color)
void ef936x_fade_in_color_semivars (Environment *_environment, int _index, char *_background_color)
void ef936x_fade_in_color_vars (Environment *_environment, char *_index, char *_background_color)

Macro Definition Documentation

◆ BITMAP_MODE_40_COLUMN

#define BITMAP_MODE_40_COLUMN   0

Definition at line 119 of file ef936x.h.

◆ BITMAP_MODE_80_COLUMN

#define BITMAP_MODE_80_COLUMN   1

Definition at line 120 of file ef936x.h.

◆ BITMAP_MODE_BITMAP_16

#define BITMAP_MODE_BITMAP_16   3

Definition at line 122 of file ef936x.h.

◆ BITMAP_MODE_BITMAP_4

#define BITMAP_MODE_BITMAP_4   2

Definition at line 121 of file ef936x.h.

◆ BITMAP_MODE_DEFAULT

#define BITMAP_MODE_DEFAULT   BITMAP_MODE_BITMAP_4

Definition at line 125 of file ef936x.h.

◆ BITMAP_MODE_PAGE

#define BITMAP_MODE_PAGE   4

Definition at line 123 of file ef936x.h.

◆ BITMAP_MODE_STANDARD

#define BITMAP_MODE_STANDARD   BITMAP_MODE_DEFAULT

Definition at line 126 of file ef936x.h.

◆ COLOR_BLACK

#define COLOR_BLACK   0

Definition at line 38 of file ef936x.h.

◆ COLOR_BLUE

#define COLOR_BLUE   6

Definition at line 47 of file ef936x.h.

◆ COLOR_BROWN

#define COLOR_BROWN   9

Definition at line 50 of file ef936x.h.

◆ COLOR_COUNT

#define COLOR_COUNT   16

Definition at line 69 of file ef936x.h.

◆ COLOR_CYAN

#define COLOR_CYAN   3

Definition at line 42 of file ef936x.h.

◆ COLOR_DARK_BLUE

#define COLOR_DARK_BLUE   6

Definition at line 46 of file ef936x.h.

◆ COLOR_DARK_GREEN

#define COLOR_DARK_GREEN   5

Definition at line 44 of file ef936x.h.

◆ COLOR_DARK_GREY

#define COLOR_DARK_GREY   11

Definition at line 52 of file ef936x.h.

◆ COLOR_DARK_RED

#define COLOR_DARK_RED   2

Definition at line 40 of file ef936x.h.

◆ COLOR_DARK_WHITE

#define COLOR_DARK_WHITE   COLOR_GREY

Definition at line 67 of file ef936x.h.

◆ COLOR_GOLD

#define COLOR_GOLD   COLOR_YELLOW

Definition at line 60 of file ef936x.h.

◆ COLOR_GREEN

#define COLOR_GREEN   5

Definition at line 45 of file ef936x.h.

◆ COLOR_GREY

#define COLOR_GREY   12

Definition at line 53 of file ef936x.h.

◆ COLOR_LAVENDER

#define COLOR_LAVENDER   COLOR_VIOLET

Definition at line 59 of file ef936x.h.

◆ COLOR_LIGHT_BLUE

#define COLOR_LIGHT_BLUE   14

Definition at line 55 of file ef936x.h.

◆ COLOR_LIGHT_GREEN

#define COLOR_LIGHT_GREEN   13

Definition at line 54 of file ef936x.h.

◆ COLOR_LIGHT_GREY

#define COLOR_LIGHT_GREY   15

Definition at line 56 of file ef936x.h.

◆ COLOR_LIGHT_RED

#define COLOR_LIGHT_RED   10

Definition at line 51 of file ef936x.h.

◆ COLOR_LIGHT_WHITE

#define COLOR_LIGHT_WHITE   COLOR_WHITE

Definition at line 68 of file ef936x.h.

◆ COLOR_MAGENTA

#define COLOR_MAGENTA   COLOR_RED

Definition at line 57 of file ef936x.h.

◆ COLOR_OLIVE_GREEN

#define COLOR_OLIVE_GREEN   COLOR_GREEN

Definition at line 64 of file ef936x.h.

◆ COLOR_ORANGE

#define COLOR_ORANGE   8

Definition at line 49 of file ef936x.h.

◆ COLOR_PEACH

#define COLOR_PEACH   COLOR_PINK

Definition at line 66 of file ef936x.h.

◆ COLOR_PINK

#define COLOR_PINK   COLOR_LIGHT_RED

Definition at line 65 of file ef936x.h.

◆ COLOR_PURPLE

#define COLOR_PURPLE   COLOR_VIOLET

Definition at line 58 of file ef936x.h.

◆ COLOR_RED

#define COLOR_RED   2

Definition at line 41 of file ef936x.h.

◆ COLOR_TAN

#define COLOR_TAN   COLOR_BROWN

Definition at line 62 of file ef936x.h.

◆ COLOR_TURQUOISE

#define COLOR_TURQUOISE   COLOR_LIGHT_BLUE

Definition at line 61 of file ef936x.h.

◆ COLOR_VIOLET

#define COLOR_VIOLET   4

Definition at line 43 of file ef936x.h.

◆ COLOR_WHITE

#define COLOR_WHITE   1

Definition at line 39 of file ef936x.h.

◆ COLOR_YELLOW

#define COLOR_YELLOW   7

Definition at line 48 of file ef936x.h.

◆ COLOR_YELLOW_GREEN

#define COLOR_YELLOW_GREEN   COLOR_YELLOW

Definition at line 63 of file ef936x.h.

◆ DEFAULT_PAPER_COLOR

#define DEFAULT_PAPER_COLOR   COLOR_BLACK

Definition at line 117 of file ef936x.h.

◆ DEFAULT_PEN_COLOR

#define DEFAULT_PEN_COLOR   COLOR_WHITE

Definition at line 116 of file ef936x.h.

◆ DOUBLE_BUFFER_PAGE_0

#define DOUBLE_BUFFER_PAGE_0   0

Definition at line 150 of file ef936x.h.

◆ DOUBLE_BUFFER_PAGE_1

#define DOUBLE_BUFFER_PAGE_1   1

Definition at line 151 of file ef936x.h.

◆ IMAGE_HEIGHT_OFFSET

#define IMAGE_HEIGHT_OFFSET   2

Definition at line 145 of file ef936x.h.

◆ IMAGE_HEIGHT_SIZE

#define IMAGE_HEIGHT_SIZE   1

Definition at line 144 of file ef936x.h.

◆ IMAGE_WIDTH_OFFSET

#define IMAGE_WIDTH_OFFSET   0

Definition at line 143 of file ef936x.h.

◆ IMAGE_WIDTH_SIZE

#define IMAGE_WIDTH_SIZE   2

Definition at line 142 of file ef936x.h.

◆ SCREEN_BORDER_X

#define SCREEN_BORDER_X   0

Definition at line 139 of file ef936x.h.

◆ SCREEN_BORDER_Y

#define SCREEN_BORDER_Y   0

Definition at line 140 of file ef936x.h.

◆ SCREEN_SPRITE_RATIO_X

#define SCREEN_SPRITE_RATIO_X   100

Definition at line 137 of file ef936x.h.

◆ SCREEN_SPRITE_RATIO_Y

#define SCREEN_SPRITE_RATIO_Y   100

Definition at line 138 of file ef936x.h.

◆ SPRITE_COUNT

#define SPRITE_COUNT   0

Definition at line 128 of file ef936x.h.

◆ SPRITE_HEIGHT

#define SPRITE_HEIGHT   0

Definition at line 130 of file ef936x.h.

◆ SPRITE_WIDTH

#define SPRITE_WIDTH   0

Definition at line 129 of file ef936x.h.

◆ SPRITE_X_MAX

#define SPRITE_X_MAX   0

Definition at line 134 of file ef936x.h.

◆ SPRITE_X_MIN

#define SPRITE_X_MIN   0

Definition at line 132 of file ef936x.h.

◆ SPRITE_Y_MAX

#define SPRITE_Y_MAX   0

Definition at line 135 of file ef936x.h.

◆ SPRITE_Y_MIN

#define SPRITE_Y_MIN   0

Definition at line 133 of file ef936x.h.

◆ TEXT_COLUMNS_COUNT

#define TEXT_COLUMNS_COUNT   40

Definition at line 147 of file ef936x.h.

◆ TEXT_ROWS_COUNT

#define TEXT_ROWS_COUNT   25

Definition at line 148 of file ef936x.h.

Function Documentation

◆ ef936x_back()

void ef936x_back ( Environment * _environment)

Definition at line 964 of file ef936x.c.

◆ ef936x_background_color()

void ef936x_background_color ( Environment * _environment,
int _index,
int _background_color )

VIC-II: emit code to change background color

This function can be used to issue code aimed at changing the background color of the screen.

Parameters
_environmentCurrent calling environment
_indexIndex of the background color
_background_colorBackground color to use

Definition at line 185 of file ef936x.c.

◆ ef936x_background_color_get_vars()

void ef936x_background_color_get_vars ( Environment * _environment,
char * _index,
char * _background_color )

VIC-II: emit code to change background color

This function can be used to issue code aimed at changing the background color of the screen.

Parameters
_environmentCurrent calling environment
_indexIndex of the background color
_background_colorBackground color to use

Definition at line 267 of file ef936x.c.

◆ ef936x_background_color_semivars()

void ef936x_background_color_semivars ( Environment * _environment,
int _index,
char * _background_color )

VIC-II: emit code to change background color

This function can be used to issue code aimed at changing the background color of the screen.

Parameters
_environmentCurrent calling environment
_indexIndex of the background color
_background_colorBackground color to use

Definition at line 246 of file ef936x.c.

◆ ef936x_background_color_vars()

void ef936x_background_color_vars ( Environment * _environment,
char * _index,
char * _background_color )

VIC-II: emit code to change background color

This function can be used to issue code aimed at changing the background color of the screen.

Parameters
_environmentCurrent calling environment
_indexIndex of the background color
_background_colorBackground color to use

Definition at line 219 of file ef936x.c.

◆ ef936x_bank_select()

void ef936x_bank_select ( Environment * _environment,
int _bank )

Definition at line 341 of file ef936x.c.

◆ ef936x_bitmap_at()

void ef936x_bitmap_at ( Environment * _environment,
char * _address )

Definition at line 500 of file ef936x.c.

◆ ef936x_bitmap_disable()

void ef936x_bitmap_disable ( Environment * _environment)

Definition at line 480 of file ef936x.c.

◆ ef936x_bitmap_enable()

void ef936x_bitmap_enable ( Environment * _environment,
int _width,
int _height,
int _colors )

Definition at line 464 of file ef936x.c.

◆ ef936x_blit_image()

void ef936x_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 )

Definition at line 2321 of file ef936x.c.

◆ ef936x_border_color()

void ef936x_border_color ( Environment * _environment,
char * _border_color )

VIC-II: emit code to change border color

This function can be used to issue code aimed at changing the border color of the screen.

Parameters
_environmentCurrent calling environment
_border_colorBorder color to use

Definition at line 171 of file ef936x.c.

◆ ef936x_calculate_sequence_frame_offset()

void ef936x_calculate_sequence_frame_offset ( Environment * _environment,
char * _offset,
char * _sequence,
char * _frame,
int _frame_size,
int _frame_count )

Definition at line 2285 of file ef936x.c.

◆ ef936x_calculate_sequence_frame_offset_regy()

void ef936x_calculate_sequence_frame_offset_regy ( Environment * _environment,
char * _sequence,
char * _frame,
int _frame_size,
int _frame_count )

Definition at line 2233 of file ef936x.c.

◆ ef936x_cline()

void ef936x_cline ( Environment * _environment,
char * _characters )

Definition at line 968 of file ef936x.c.

◆ ef936x_cls()

void ef936x_cls ( Environment * _environment)

Definition at line 672 of file ef936x.c.

◆ ef936x_cls_box()

void ef936x_cls_box ( Environment * _environment,
char * _x1,
char * _y1,
char * _w,
char * _h )

Definition at line 680 of file ef936x.c.

◆ ef936x_collision()

void ef936x_collision ( Environment * _environment,
char * _sprite_mask,
char * _result )

VIC-II: 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 another sprite. The result (0 = no collision, 0xff = collision occurred) is returned in the output variable.

Parameters
_environmentCurrent calling environment
_sprite_maskSprite mask to use
_resultWhere to store the result

Definition at line 143 of file ef936x.c.

◆ ef936x_colormap_at()

void ef936x_colormap_at ( Environment * _environment,
char * _address )

Definition at line 504 of file ef936x.c.

◆ ef936x_fade_in()

void ef936x_fade_in ( Environment * _environment,
char * _period )

Definition at line 2477 of file ef936x.c.

◆ ef936x_fade_in_color()

void ef936x_fade_in_color ( Environment * _environment,
int _index,
int _background_color )

Definition at line 2491 of file ef936x.c.

◆ ef936x_fade_in_color_semivars()

void ef936x_fade_in_color_semivars ( Environment * _environment,
int _index,
char * _background_color )

Definition at line 2509 of file ef936x.c.

◆ ef936x_fade_in_color_vars()

void ef936x_fade_in_color_vars ( Environment * _environment,
char * _index,
char * _background_color )

Definition at line 2498 of file ef936x.c.

◆ ef936x_fade_out()

void ef936x_fade_out ( Environment * _environment,
char * _period )

Definition at line 2463 of file ef936x.c.

◆ ef936x_finalization()

void ef936x_finalization ( Environment * _environment)

Definition at line 861 of file ef936x.c.

◆ ef936x_flip_image()

void ef936x_flip_image ( Environment * _environment,
Resource * _image,
char * _frame,
char * _sequence,
int _frame_size,
int _frame_count,
char * _direction )

Definition at line 2389 of file ef936x.c.

◆ ef936x_get_height()

void ef936x_get_height ( Environment * _environment,
char * _result )

Definition at line 665 of file ef936x.c.

◆ ef936x_get_image()

void ef936x_get_image ( Environment * _environment,
char * _image,
char * _x,
char * _y,
char * _frame,
char * _sequence,
int _frame_size,
int _frame_count,
int _palette )

Definition at line 2118 of file ef936x.c.

◆ ef936x_get_raster_line()

Variable * ef936x_get_raster_line ( Environment * _environment)

Definition at line 2223 of file ef936x.c.

◆ ef936x_get_width()

void ef936x_get_width ( Environment * _environment,
char * _result )

Definition at line 651 of file ef936x.c.

◆ ef936x_hit()

void ef936x_hit ( Environment * _environment,
char * _sprite_mask,
char * _result )

VIC-II: 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.

Parameters
_environmentCurrent calling environment
_sprite_maskSprite mask to use
_resultWhere to store the result

Definition at line 158 of file ef936x.c.

◆ ef936x_horizontal_scroll()

void ef936x_horizontal_scroll ( Environment * _environment,
char * _displacement )

Definition at line 647 of file ef936x.c.

◆ ef936x_hscroll_line()

void ef936x_hscroll_line ( Environment * _environment,
int _direction,
int _overlap )

Definition at line 939 of file ef936x.c.

◆ ef936x_hscroll_screen()

void ef936x_hscroll_screen ( Environment * _environment,
int _direction,
int _overlap )

Definition at line 953 of file ef936x.c.

◆ ef936x_image_converter()

Variable * ef936x_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 )

Definition at line 1809 of file ef936x.c.

◆ ef936x_image_size()

int ef936x_image_size ( Environment * _environment,
int _width,
int _height,
int _mode )

Definition at line 988 of file ef936x.c.

◆ ef936x_initialization()

void ef936x_initialization ( Environment * _environment)

Definition at line 731 of file ef936x.c.

◆ ef936x_move_tiles()

void ef936x_move_tiles ( Environment * _environment,
char * _image,
char * _x,
char * _y )

Definition at line 2206 of file ef936x.c.

◆ ef936x_new_image()

Variable * ef936x_new_image ( Environment * _environment,
int _width,
int _height,
int _mode )

Definition at line 2029 of file ef936x.c.

◆ ef936x_new_images()

Variable * ef936x_new_images ( Environment * _environment,
int _frames,
int _width,
int _height,
int _mode )

Definition at line 2053 of file ef936x.c.

◆ ef936x_new_sequence()

Variable * ef936x_new_sequence ( Environment * _environment,
int _sequences,
int _frames,
int _width,
int _height,
int _mode )

Definition at line 2085 of file ef936x.c.

◆ ef936x_next_raster()

void ef936x_next_raster ( Environment * _environment)

VIC-II: emit code to wait for next raster irq

This function outputs assembly code needed to wait for the next raster. Meanwhile, the execution of the main code will resume where it left off.

Parameters
_environmentCurrent calling environment

Definition at line 320 of file ef936x.c.

◆ ef936x_next_raster_at()

void ef936x_next_raster_at ( Environment * _environment,
char * _label,
char * _positionlo,
char * _positionhi )

VIC-II: 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.

Parameters
_environmentCurrent calling environment
_labelLabel to jump to when vertical raster reach the value given
_positionloThe vertical position to wait for (bits 7..0)
_positionhiThe vertical position to wait for (bit 8)

Definition at line 337 of file ef936x.c.

◆ ef936x_palette_extract()

int ef936x_palette_extract ( Environment * _environment,
char * _data,
int _width,
int _height,
int _depth,
int _flags,
RGBi * _palette )

Definition at line 2375 of file ef936x.c.

◆ ef936x_pget_color_vars()

void ef936x_pget_color_vars ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 554 of file ef936x.c.

◆ ef936x_pset_int()

void ef936x_pset_int ( Environment * _environment,
int _x,
int _y,
int * _c )

Definition at line 512 of file ef936x.c.

◆ ef936x_pset_vars()

void ef936x_pset_vars ( Environment * _environment,
char * _x,
char * _y,
char * _c )

Definition at line 530 of file ef936x.c.

◆ ef936x_put_image()

void ef936x_put_image ( Environment * _environment,
Resource * _image,
char * _x,
char * _y,
char * _frame,
char * _sequence,
int _frame_size,
int _frame_count,
char * _flags )

Definition at line 1920 of file ef936x.c.

◆ ef936x_put_tile()

void ef936x_put_tile ( Environment * _environment,
char * _image,
char * _x,
char * _y )

Definition at line 2202 of file ef936x.c.

◆ ef936x_put_tiles()

void ef936x_put_tiles ( Environment * _environment,
char * _image,
char * _x,
char * _y,
char * _w,
char * _h )

Definition at line 2210 of file ef936x.c.

◆ ef936x_raster_at()

void ef936x_raster_at ( Environment * _environment,
char * _label,
char * _positionlo,
char * _positionhi )

VIC-II: 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.

Parameters
_environmentCurrent calling environment
_labelLabel to jump to when vertical raster reach the value given
_positionloThe vertical position to wait for (bits 7..0)
_positionhiThe vertical position to wait for (bit 8)

Definition at line 306 of file ef936x.c.

◆ ef936x_screen_columns()

void ef936x_screen_columns ( Environment * _environment,
char * _columns )

Definition at line 583 of file ef936x.c.

◆ ef936x_screen_mode_enable()

int ef936x_screen_mode_enable ( Environment * _environment,
ScreenMode * _screen_mode )

Definition at line 369 of file ef936x.c.

◆ ef936x_screen_off()

void ef936x_screen_off ( Environment * _environment)

Definition at line 575 of file ef936x.c.

◆ ef936x_screen_on()

void ef936x_screen_on ( Environment * _environment)

Definition at line 571 of file ef936x.c.

◆ ef936x_screen_rows()

void ef936x_screen_rows ( Environment * _environment,
char * _rows )

Definition at line 579 of file ef936x.c.

◆ ef936x_scroll()

void ef936x_scroll ( Environment * _environment,
int _dx,
int _dy )

Definition at line 2186 of file ef936x.c.

◆ ef936x_scroll_text()

void ef936x_scroll_text ( Environment * _environment,
int _direction,
int _overlap )

Definition at line 695 of file ef936x.c.

◆ ef936x_slice_image()

void ef936x_slice_image ( Environment * _environment,
char * _image,
char * _frame,
char * _sequence,
int _frame_size,
int _frame_count,
char * _destination )

Definition at line 2371 of file ef936x.c.

◆ ef936x_sprite_at()

void ef936x_sprite_at ( Environment * _environment,
char * _sprite,
char * _x,
char * _y )

Definition at line 603 of file ef936x.c.

◆ ef936x_sprite_color()

void ef936x_sprite_color ( Environment * _environment,
char * _sprite,
char * _color )

Definition at line 631 of file ef936x.c.

◆ ef936x_sprite_common_color()

void ef936x_sprite_common_color ( Environment * _environment,
char * _index,
char * _common_color )

VIC-II: 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.

Parameters
_environmentCurrent calling environment
_indexIndex of the background color
_common_colorIndex of the color to use

Definition at line 287 of file ef936x.c.

◆ ef936x_sprite_compress_horizontal()

void ef936x_sprite_compress_horizontal ( Environment * _environment,
char * _sprite )

Definition at line 619 of file ef936x.c.

◆ ef936x_sprite_compress_vertical()

void ef936x_sprite_compress_vertical ( Environment * _environment,
char * _sprite )

Definition at line 615 of file ef936x.c.

◆ ef936x_sprite_data_from()

void ef936x_sprite_data_from ( Environment * _environment,
char * _sprite,
char * _address )

Definition at line 587 of file ef936x.c.

◆ ef936x_sprite_data_set()

void ef936x_sprite_data_set ( Environment * _environment,
char * _sprite,
char * _address )

Definition at line 591 of file ef936x.c.

◆ ef936x_sprite_disable()

void ef936x_sprite_disable ( Environment * _environment,
char * _sprite )

Definition at line 599 of file ef936x.c.

◆ ef936x_sprite_enable()

void ef936x_sprite_enable ( Environment * _environment,
char * _sprite )

Definition at line 595 of file ef936x.c.

◆ ef936x_sprite_expand_horizontal()

void ef936x_sprite_expand_horizontal ( Environment * _environment,
char * _sprite )

Definition at line 611 of file ef936x.c.

◆ ef936x_sprite_expand_vertical()

void ef936x_sprite_expand_vertical ( Environment * _environment,
char * _sprite )

Definition at line 607 of file ef936x.c.

◆ ef936x_sprite_monocolor()

void ef936x_sprite_monocolor ( Environment * _environment,
char * _sprite )

Definition at line 627 of file ef936x.c.

◆ ef936x_sprite_multicolor()

void ef936x_sprite_multicolor ( Environment * _environment,
char * _sprite )

Definition at line 623 of file ef936x.c.

◆ ef936x_sprite_priority()

void ef936x_sprite_priority ( Environment * _environment,
char * _sprite,
char * _priority )

Definition at line 635 of file ef936x.c.

◆ ef936x_text()

void ef936x_text ( Environment * _environment,
char * _text,
char * _text_size,
int _raw )

Definition at line 706 of file ef936x.c.

◆ ef936x_textmap_at()

void ef936x_textmap_at ( Environment * _environment,
char * _address )

Definition at line 508 of file ef936x.c.

◆ ef936x_tile_at()

void ef936x_tile_at ( Environment * _environment,
char * _x,
char * _y,
char * _result )

Definition at line 2215 of file ef936x.c.

◆ ef936x_tilemap_enable()

void ef936x_tilemap_enable ( Environment * _environment,
int _width,
int _height,
int _colors,
int _tile_width,
int _tile_height )

Definition at line 484 of file ef936x.c.

◆ ef936x_tiles_at()

void ef936x_tiles_at ( Environment * _environment,
char * _address )

Definition at line 639 of file ef936x.c.

◆ ef936x_tiles_get()

void ef936x_tiles_get ( Environment * _environment,
char * _result )

Definition at line 658 of file ef936x.c.

◆ ef936x_use_tileset()

void ef936x_use_tileset ( Environment * _environment,
char * _tileset )

Definition at line 2219 of file ef936x.c.

◆ ef936x_vertical_scroll()

void ef936x_vertical_scroll ( Environment * _environment,
char * _displacement )

Definition at line 643 of file ef936x.c.