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

Go to the source code of this file.

Macros

#define COLOR_BLACK   0
#define COLOR_DARK_WHITE   12
#define COLOR_WHITE   1
#define COLOR_LIGHT_WHITE   COLOR_WHITE
#define COLOR_DARK_RED   9
#define COLOR_RED   2
#define COLOR_LIGHT_RED   10
#define COLOR_CYAN   3
#define COLOR_VIOLET   4
#define COLOR_DARK_GREEN   5
#define COLOR_GREEN   5
#define COLOR_LIGHT_GREEN   13
#define COLOR_DARK_BLUE   6
#define COLOR_BLUE   6
#define COLOR_LIGHT_BLUE   14
#define COLOR_YELLOW   7
#define COLOR_ORANGE   8
#define COLOR_BROWN   9
#define COLOR_DARK_GREY   11
#define COLOR_GREY   12
#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_COUNT   16
#define IMAGE_WIDTH_SIZE   2
#define IMAGE_WIDTH_OFFSET   0
#define IMAGE_HEIGHT_SIZE   1
#define IMAGE_HEIGHT_OFFSET   2
#define DEFAULT_PEN_COLOR   COLOR_WHITE
#define DEFAULT_PAPER_COLOR   COLOR_BLACK
#define TEXT_COLUMNS_COUNT   40
#define TEXT_ROWS_COUNT   25
#define BITMAP_MODE_STANDARD   2
#define BITMAP_MODE_MULTICOLOR   3
#define BITMAP_MODE_AH   5
#define BITMAP_MODE_AIFLI   6
#define BITMAP_MODE_ASSLACE   7
#define BITMAP_MODE_ECI   8
#define BITMAP_MODE_IAFLI   9
#define BITMAP_MODE_IH   10
#define BITMAP_MODE_MRFLI   11
#define BITMAP_MODE_MUCSUFLI   12
#define BITMAP_MODE_MUCSUH   13
#define BITMAP_MODE_MUFLI   14
#define BITMAP_MODE_MUIFLI   15
#define BITMAP_MODE_NUFLI   16
#define BITMAP_MODE_NUIFLI   17
#define BITMAP_MODE_SH   18
#define BITMAP_MODE_SHFLI   19
#define BITMAP_MODE_SHI   20
#define BITMAP_MODE_SHIFLI   21
#define BITMAP_MODE_SHIFXL   22
#define BITMAP_MODE_UFLI   23
#define BITMAP_MODE_UIFLI   24
#define BITMAP_MODE_TRIFLI   25
#define BITMAP_MODE_XFLI   26
#define BITMAP_MODE_XIFLI   27
#define BITMAP_MODE_FLI   28
#define BITMAP_MODE_HCB   29
#define BITMAP_MODE_IFLI   30
#define BITMAP_MODE_MUCSU   31
#define BITMAP_MODE_MCI   32
#define BITMAP_MODE_MEGATEXT   33
#define BITMAP_MODE_PRS   34
#define BITMAP_MODE_DEFAULT   BITMAP_MODE_STANDARD
#define TILEMAP_MODE_STANDARD   0
#define TILEMAP_MODE_MULTICOLOR   1
#define TILEMAP_MODE_EXTENDED   4
#define SPRITE_COUNT   8
#define SPRITE_WIDTH   24
#define SPRITE_HEIGHT   21
#define SPRITE_X_MIN   0
#define SPRITE_Y_MIN   0
#define SPRITE_X_MAX   366
#define SPRITE_Y_MAX   255
#define SCREEN_SPRITE_RATIO_X   200
#define SCREEN_SPRITE_RATIO_Y   100
#define SCREEN_BORDER_X   23
#define SCREEN_BORDER_Y   50
#define DOUBLE_BUFFER_PAGE_0   0
#define DOUBLE_BUFFER_PAGE_1   1

Functions

int vic2_screen_mode_enable (Environment *_environment, ScreenMode *_screen_mode)
void vic2_initialization (Environment *_environment)
void vic2_finalization (Environment *_environment)
void vic2_back (Environment *_environment)
void vic2_background_color (Environment *_environment, int _index, int _background_color)
 VIC-II: emit code to change background color
void vic2_background_color_vars (Environment *_environment, char *_index, char *_background_color)
 VIC-II: emit code to change background color
void vic2_background_color_semivars (Environment *_environment, int _index, char *_background_color)
 VIC-II: emit code to change background color
void vic2_background_color_get_vars (Environment *_environment, char *_index, char *_background_color)
 VIC-II: emit code to retrieve background color
void vic2_border_color (Environment *_environment, int _border_color)
void vic2_border_color_vars (Environment *_environment, char *_border_color)
 VIC-II: emit code to change border color
Variablevic2_collision (Environment *_environment, char *_sprite)
 VIC-II: emit code to check for collision
void vic2_hit (Environment *_environment, char *_sprite_mask, char *_result)
 VIC-II: emit code to check for collision
void vic2_next_raster (Environment *_environment)
 VIC-II: emit code to wait for next raster irq
void vic2_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 vic2_raster_at (Environment *_environment, char *_label, char *_positionlo, char *_positionhi)
 VIC-II: emit code to set raster irq
void vic2_sprite_common_color (Environment *_environment, int _index, int _common_color)
 VIC-II: emit code to change common sprite's color
void vic2_sprite_common_color_vars (Environment *_environment, char *_index, char *_common_color)
 VIC-II: emit code to change common sprite's color
void vic2_bitmap_enable (Environment *_environment, int _width, int _height, int _colors)
void vic2_bitmap_disable (Environment *_environment)
void vic2_bitmap_at (Environment *_environment, char *_address)
void vic2_colormap_at (Environment *_environment, char *_address)
void vic2_textmap_at (Environment *_environment, char *_address)
void vic2_tiles_at (Environment *_environment, char *_address)
void vic2_tilemap_enable (Environment *_environment, int _width, int _height, int _colors, int _tile_width, int _tile_height)
void vic2_bank_select (Environment *_environment, int _bank)
void vic2_screen_on (Environment *_environment)
void vic2_screen_off (Environment *_environment)
void vic2_screen_rows (Environment *_environment, char *_rows)
void vic2_screen_columns (Environment *_environment, char *_columns)
void vic2_sprite_data_from (Environment *_environment, char *_sprite, char *_address)
void vic2_sprite_data_set (Environment *_environment, char *_sprite, char *_address)
void vic2_sprite_duplicate (Environment *_environment, char *_sprite, char *_original)
void vic2_sprite_enable (Environment *_environment, char *_sprite)
void vic2_sprite_disable (Environment *_environment, char *_sprite)
void vic2_sprite_at (Environment *_environment, char *_sprite, char *_x, char *_y)
void vic2_sprite_expand_vertical (Environment *_environment, char *_sprite)
void vic2_sprite_expand_horizontal (Environment *_environment, char *_sprite)
void vic2_sprite_compress_vertical (Environment *_environment, char *_sprite)
void vic2_sprite_compress_horizontal (Environment *_environment, char *_sprite)
void vic2_sprite_multicolor (Environment *_environment, char *_sprite)
void vic2_sprite_monocolor (Environment *_environment, char *_sprite)
void vic2_sprite_color (Environment *_environment, char *_sprite, char *_color)
void vic2_sprite_priority (Environment *_environment, char *_sprite, char *_priority)
void vic2_vertical_scroll (Environment *_environment, char *_displacement)
void vic2_horizontal_scroll (Environment *_environment, char *_displacement)
void vic2_busy_wait (Environment *_environment, char *_timing)
void vic2_tiles_get (Environment *_environment, char *_result)
void vic2_get_width (Environment *_environment, char *_result)
void vic2_get_height (Environment *_environment, char *_result)
void vic2_pset_int (Environment *_environment, int _x, int _y, int *_c)
void vic2_pset_vars (Environment *_environment, char *_x, char *_y, char *_c)
void vic2_pget_color_vars (Environment *_environment, char *_x, char *_y, char *_result)
void vic2_cls (Environment *_environment)
void vic2_cls_box (Environment *_environment, char *_x1, char *_y1, char *_w, char *_h)
void vic2_scroll_text (Environment *_environment, int _direction, int _overlap)
void vic2_hscroll_line (Environment *_environment, int _direction, int _overlap)
void vic2_hscroll_screen (Environment *_environment, int _direction, int _overlap)
void vic2_text (Environment *_environment, char *_text, char *_text_size, int _raw)
void vic2_cline (Environment *_environment, char *_characters)
void vic2_scroll (Environment *_environment, int _dx, int _dy)
Variablevic2_get_raster_line (Environment *_environment)
int vic2_image_size (Environment *_environment, int _width, int _height, int _mode)
Variablevic2_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)
Variablevic2_sprite_converter (Environment *_environment, char *_data, int _width, int _height, int _depth, RGBi *_color, int _flags, int _x_slot, int _y_slot)
void vic2_put_image (Environment *_environment, Resource *_image, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_flags)
void vic2_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 vic2_wait_vbl (Environment *_environment, char *_raster_line)
Variablevic2_new_image (Environment *_environment, int _width, int _height, int _mode)
Variablevic2_new_images (Environment *_environment, int _frames, int _width, int _height, int _mode)
Variablevic2_new_sequence (Environment *_environment, int _sequences, int _frames, int _width, int _height, int _mode)
void vic2_get_image (Environment *_environment, char *_image, char *_x, char *_y, char *_frame, char *_sequence, int _frame_size, int _frame_count, int _palette)
void vic2_put_tile (Environment *_environment, char *_image, char *_x, char *_y)
void vic2_put_tiles (Environment *_environment, char *_image, char *_x, char *_y, char *_w, char *_h)
void vic2_move_tiles (Environment *_environment, char *_image, char *_x, char *_y)
void vic2_use_tileset (Environment *_environment, char *_tileset)
void vic2_tile_at (Environment *_environment, char *_x, char *_y, char *_result)
void vic2_slice_image (Environment *_environment, char *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_destination)
int vic2_palette_extract (Environment *_environment, char *_data, int _width, int _height, int _depth, int _flags, RGBi *_palette)
void vic2_calculate_sequence_frame_offset (Environment *_environment, char *_offset, char *_sequence, char *_frame, int _frame_size, int _frame_count)
void vic2_flip_image (Environment *_environment, Resource *_image, char *_frame, char *_sequence, int _frame_size, int _frame_count, char *_direction)
void vic2_fade (Environment *_environment, char *_ticks)
void vic2_screen (Environment *_environment, char *_x, char *_y, char *_c)
void vic2_flash_begin (Environment *_environment, char *_index, char *_register)
void vic2_flash_register (Environment *_environment, char *_index, char *_timer, char *_color)
void vic2_flash_end (Environment *_environment)
void vic2_flash_off (Environment *_environment, char *_index)

Macro Definition Documentation

◆ BITMAP_MODE_AH

#define BITMAP_MODE_AH   5

Definition at line 82 of file vic2.h.

◆ BITMAP_MODE_AIFLI

#define BITMAP_MODE_AIFLI   6

Definition at line 83 of file vic2.h.

◆ BITMAP_MODE_ASSLACE

#define BITMAP_MODE_ASSLACE   7

Definition at line 84 of file vic2.h.

◆ BITMAP_MODE_DEFAULT

#define BITMAP_MODE_DEFAULT   BITMAP_MODE_STANDARD

Definition at line 113 of file vic2.h.

◆ BITMAP_MODE_ECI

#define BITMAP_MODE_ECI   8

Definition at line 85 of file vic2.h.

◆ BITMAP_MODE_FLI

#define BITMAP_MODE_FLI   28

Definition at line 105 of file vic2.h.

◆ BITMAP_MODE_HCB

#define BITMAP_MODE_HCB   29

Definition at line 106 of file vic2.h.

◆ BITMAP_MODE_IAFLI

#define BITMAP_MODE_IAFLI   9

Definition at line 86 of file vic2.h.

◆ BITMAP_MODE_IFLI

#define BITMAP_MODE_IFLI   30

Definition at line 107 of file vic2.h.

◆ BITMAP_MODE_IH

#define BITMAP_MODE_IH   10

Definition at line 87 of file vic2.h.

◆ BITMAP_MODE_MCI

#define BITMAP_MODE_MCI   32

Definition at line 109 of file vic2.h.

◆ BITMAP_MODE_MEGATEXT

#define BITMAP_MODE_MEGATEXT   33

Definition at line 110 of file vic2.h.

◆ BITMAP_MODE_MRFLI

#define BITMAP_MODE_MRFLI   11

Definition at line 88 of file vic2.h.

◆ BITMAP_MODE_MUCSU

#define BITMAP_MODE_MUCSU   31

Definition at line 108 of file vic2.h.

◆ BITMAP_MODE_MUCSUFLI

#define BITMAP_MODE_MUCSUFLI   12

Definition at line 89 of file vic2.h.

◆ BITMAP_MODE_MUCSUH

#define BITMAP_MODE_MUCSUH   13

Definition at line 90 of file vic2.h.

◆ BITMAP_MODE_MUFLI

#define BITMAP_MODE_MUFLI   14

Definition at line 91 of file vic2.h.

◆ BITMAP_MODE_MUIFLI

#define BITMAP_MODE_MUIFLI   15

Definition at line 92 of file vic2.h.

◆ BITMAP_MODE_MULTICOLOR

#define BITMAP_MODE_MULTICOLOR   3

Definition at line 81 of file vic2.h.

◆ BITMAP_MODE_NUFLI

#define BITMAP_MODE_NUFLI   16

Definition at line 93 of file vic2.h.

◆ BITMAP_MODE_NUIFLI

#define BITMAP_MODE_NUIFLI   17

Definition at line 94 of file vic2.h.

◆ BITMAP_MODE_PRS

#define BITMAP_MODE_PRS   34

Definition at line 111 of file vic2.h.

◆ BITMAP_MODE_SH

#define BITMAP_MODE_SH   18

Definition at line 95 of file vic2.h.

◆ BITMAP_MODE_SHFLI

#define BITMAP_MODE_SHFLI   19

Definition at line 96 of file vic2.h.

◆ BITMAP_MODE_SHI

#define BITMAP_MODE_SHI   20

Definition at line 97 of file vic2.h.

◆ BITMAP_MODE_SHIFLI

#define BITMAP_MODE_SHIFLI   21

Definition at line 98 of file vic2.h.

◆ BITMAP_MODE_SHIFXL

#define BITMAP_MODE_SHIFXL   22

Definition at line 99 of file vic2.h.

◆ BITMAP_MODE_STANDARD

#define BITMAP_MODE_STANDARD   2

Definition at line 80 of file vic2.h.

◆ BITMAP_MODE_TRIFLI

#define BITMAP_MODE_TRIFLI   25

Definition at line 102 of file vic2.h.

◆ BITMAP_MODE_UFLI

#define BITMAP_MODE_UFLI   23

Definition at line 100 of file vic2.h.

◆ BITMAP_MODE_UIFLI

#define BITMAP_MODE_UIFLI   24

Definition at line 101 of file vic2.h.

◆ BITMAP_MODE_XFLI

#define BITMAP_MODE_XFLI   26

Definition at line 103 of file vic2.h.

◆ BITMAP_MODE_XIFLI

#define BITMAP_MODE_XIFLI   27

Definition at line 104 of file vic2.h.

◆ COLOR_BLACK

#define COLOR_BLACK   0

Definition at line 36 of file vic2.h.

◆ COLOR_BLUE

#define COLOR_BLUE   6

Definition at line 49 of file vic2.h.

◆ COLOR_BROWN

#define COLOR_BROWN   9

Definition at line 53 of file vic2.h.

◆ COLOR_COUNT

#define COLOR_COUNT   16

Definition at line 67 of file vic2.h.

◆ COLOR_CYAN

#define COLOR_CYAN   3

Definition at line 43 of file vic2.h.

◆ COLOR_DARK_BLUE

#define COLOR_DARK_BLUE   6

Definition at line 48 of file vic2.h.

◆ COLOR_DARK_GREEN

#define COLOR_DARK_GREEN   5

Definition at line 45 of file vic2.h.

◆ COLOR_DARK_GREY

#define COLOR_DARK_GREY   11

Definition at line 54 of file vic2.h.

◆ COLOR_DARK_RED

#define COLOR_DARK_RED   9

Definition at line 40 of file vic2.h.

◆ COLOR_DARK_WHITE

#define COLOR_DARK_WHITE   12

Definition at line 37 of file vic2.h.

◆ COLOR_GOLD

#define COLOR_GOLD   COLOR_YELLOW

Definition at line 60 of file vic2.h.

◆ COLOR_GREEN

#define COLOR_GREEN   5

Definition at line 46 of file vic2.h.

◆ COLOR_GREY

#define COLOR_GREY   12

Definition at line 55 of file vic2.h.

◆ COLOR_LAVENDER

#define COLOR_LAVENDER   COLOR_VIOLET

Definition at line 59 of file vic2.h.

◆ COLOR_LIGHT_BLUE

#define COLOR_LIGHT_BLUE   14

Definition at line 50 of file vic2.h.

◆ COLOR_LIGHT_GREEN

#define COLOR_LIGHT_GREEN   13

Definition at line 47 of file vic2.h.

◆ COLOR_LIGHT_GREY

#define COLOR_LIGHT_GREY   15

Definition at line 56 of file vic2.h.

◆ COLOR_LIGHT_RED

#define COLOR_LIGHT_RED   10

Definition at line 42 of file vic2.h.

◆ COLOR_LIGHT_WHITE

#define COLOR_LIGHT_WHITE   COLOR_WHITE

Definition at line 39 of file vic2.h.

◆ COLOR_MAGENTA

#define COLOR_MAGENTA   COLOR_RED

Definition at line 57 of file vic2.h.

◆ COLOR_OLIVE_GREEN

#define COLOR_OLIVE_GREEN   COLOR_GREEN

Definition at line 64 of file vic2.h.

◆ COLOR_ORANGE

#define COLOR_ORANGE   8

Definition at line 52 of file vic2.h.

◆ COLOR_PEACH

#define COLOR_PEACH   COLOR_PINK

Definition at line 66 of file vic2.h.

◆ COLOR_PINK

#define COLOR_PINK   COLOR_LIGHT_RED

Definition at line 65 of file vic2.h.

◆ COLOR_PURPLE

#define COLOR_PURPLE   COLOR_VIOLET

Definition at line 58 of file vic2.h.

◆ COLOR_RED

#define COLOR_RED   2

Definition at line 41 of file vic2.h.

◆ COLOR_TAN

#define COLOR_TAN   COLOR_BROWN

Definition at line 62 of file vic2.h.

◆ COLOR_TURQUOISE

#define COLOR_TURQUOISE   COLOR_LIGHT_BLUE

Definition at line 61 of file vic2.h.

◆ COLOR_VIOLET

#define COLOR_VIOLET   4

Definition at line 44 of file vic2.h.

◆ COLOR_WHITE

#define COLOR_WHITE   1

Definition at line 38 of file vic2.h.

◆ COLOR_YELLOW

#define COLOR_YELLOW   7

Definition at line 51 of file vic2.h.

◆ COLOR_YELLOW_GREEN

#define COLOR_YELLOW_GREEN   COLOR_YELLOW

Definition at line 63 of file vic2.h.

◆ DEFAULT_PAPER_COLOR

#define DEFAULT_PAPER_COLOR   COLOR_BLACK

Definition at line 75 of file vic2.h.

◆ DEFAULT_PEN_COLOR

#define DEFAULT_PEN_COLOR   COLOR_WHITE

Definition at line 74 of file vic2.h.

◆ DOUBLE_BUFFER_PAGE_0

#define DOUBLE_BUFFER_PAGE_0   0

Definition at line 132 of file vic2.h.

◆ DOUBLE_BUFFER_PAGE_1

#define DOUBLE_BUFFER_PAGE_1   1

Definition at line 133 of file vic2.h.

◆ IMAGE_HEIGHT_OFFSET

#define IMAGE_HEIGHT_OFFSET   2

Definition at line 72 of file vic2.h.

◆ IMAGE_HEIGHT_SIZE

#define IMAGE_HEIGHT_SIZE   1

Definition at line 71 of file vic2.h.

◆ IMAGE_WIDTH_OFFSET

#define IMAGE_WIDTH_OFFSET   0

Definition at line 70 of file vic2.h.

◆ IMAGE_WIDTH_SIZE

#define IMAGE_WIDTH_SIZE   2

Definition at line 69 of file vic2.h.

◆ SCREEN_BORDER_X

#define SCREEN_BORDER_X   23

Definition at line 129 of file vic2.h.

◆ SCREEN_BORDER_Y

#define SCREEN_BORDER_Y   50

Definition at line 130 of file vic2.h.

◆ SCREEN_SPRITE_RATIO_X

#define SCREEN_SPRITE_RATIO_X   200

Definition at line 127 of file vic2.h.

◆ SCREEN_SPRITE_RATIO_Y

#define SCREEN_SPRITE_RATIO_Y   100

Definition at line 128 of file vic2.h.

◆ SPRITE_COUNT

#define SPRITE_COUNT   8

Definition at line 119 of file vic2.h.

◆ SPRITE_HEIGHT

#define SPRITE_HEIGHT   21

Definition at line 121 of file vic2.h.

◆ SPRITE_WIDTH

#define SPRITE_WIDTH   24

Definition at line 120 of file vic2.h.

◆ SPRITE_X_MAX

#define SPRITE_X_MAX   366

Definition at line 124 of file vic2.h.

◆ SPRITE_X_MIN

#define SPRITE_X_MIN   0

Definition at line 122 of file vic2.h.

◆ SPRITE_Y_MAX

#define SPRITE_Y_MAX   255

Definition at line 125 of file vic2.h.

◆ SPRITE_Y_MIN

#define SPRITE_Y_MIN   0

Definition at line 123 of file vic2.h.

◆ TEXT_COLUMNS_COUNT

#define TEXT_COLUMNS_COUNT   40

Definition at line 77 of file vic2.h.

◆ TEXT_ROWS_COUNT

#define TEXT_ROWS_COUNT   25

Definition at line 78 of file vic2.h.

◆ TILEMAP_MODE_EXTENDED

#define TILEMAP_MODE_EXTENDED   4

Definition at line 117 of file vic2.h.

◆ TILEMAP_MODE_MULTICOLOR

#define TILEMAP_MODE_MULTICOLOR   1

Definition at line 116 of file vic2.h.

◆ TILEMAP_MODE_STANDARD

#define TILEMAP_MODE_STANDARD   0

Definition at line 115 of file vic2.h.

Function Documentation

◆ vic2_back()

void vic2_back ( Environment * _environment)

Definition at line 2431 of file vic2.c.

◆ vic2_background_color()

void vic2_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 671 of file vic2.c.

◆ vic2_background_color_get_vars()

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

VIC-II: emit code to retrieve background color

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

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

Definition at line 743 of file vic2.c.

◆ vic2_background_color_semivars()

void vic2_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 719 of file vic2.c.

◆ vic2_background_color_vars()

void vic2_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 691 of file vic2.c.

◆ vic2_bank_select()

void vic2_bank_select ( Environment * _environment,
int _bank )

Definition at line 899 of file vic2.c.

◆ vic2_bitmap_at()

void vic2_bitmap_at ( Environment * _environment,
char * _address )

Definition at line 1284 of file vic2.c.

◆ vic2_bitmap_disable()

void vic2_bitmap_disable ( Environment * _environment)

Definition at line 1248 of file vic2.c.

◆ vic2_bitmap_enable()

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

Definition at line 1231 of file vic2.c.

◆ vic2_blit_image()

void vic2_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 4023 of file vic2.c.

◆ vic2_border_color()

void vic2_border_color ( Environment * _environment,
int _border_color )

Definition at line 637 of file vic2.c.

◆ vic2_border_color_vars()

void vic2_border_color_vars ( 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 653 of file vic2.c.

◆ vic2_busy_wait()

void vic2_busy_wait ( Environment * _environment,
char * _timing )

Definition at line 2025 of file vic2.c.

◆ vic2_calculate_sequence_frame_offset()

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

Definition at line 3931 of file vic2.c.

◆ vic2_cline()

void vic2_cline ( Environment * _environment,
char * _characters )

Definition at line 2439 of file vic2.c.

◆ vic2_cls()

void vic2_cls ( Environment * _environment)

Definition at line 2085 of file vic2.c.

◆ vic2_cls_box()

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

Definition at line 2097 of file vic2.c.

◆ vic2_collision()

Variable * vic2_collision ( Environment * _environment,
char * _sprite )

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 563 of file vic2.c.

◆ vic2_colormap_at()

void vic2_colormap_at ( Environment * _environment,
char * _address )

Definition at line 1305 of file vic2.c.

◆ vic2_fade()

void vic2_fade ( Environment * _environment,
char * _ticks )

Definition at line 4432 of file vic2.c.

◆ vic2_finalization()

void vic2_finalization ( Environment * _environment)

Definition at line 2283 of file vic2.c.

◆ vic2_flash_begin()

void vic2_flash_begin ( Environment * _environment,
char * _index,
char * _register )

Definition at line 4465 of file vic2.c.

◆ vic2_flash_end()

void vic2_flash_end ( Environment * _environment)

Definition at line 4500 of file vic2.c.

◆ vic2_flash_off()

void vic2_flash_off ( Environment * _environment,
char * _index )

Definition at line 4508 of file vic2.c.

◆ vic2_flash_register()

void vic2_flash_register ( Environment * _environment,
char * _index,
char * _timer,
char * _color )

Definition at line 4489 of file vic2.c.

◆ vic2_flip_image()

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

Definition at line 4388 of file vic2.c.

◆ vic2_get_height()

void vic2_get_height ( Environment * _environment,
char * _result )

Definition at line 2076 of file vic2.c.

◆ vic2_get_image()

void vic2_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 4195 of file vic2.c.

◆ vic2_get_raster_line()

Variable * vic2_get_raster_line ( Environment * _environment)

Definition at line 4354 of file vic2.c.

◆ vic2_get_width()

void vic2_get_width ( Environment * _environment,
char * _result )

Definition at line 2060 of file vic2.c.

◆ vic2_hit()

void vic2_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 616 of file vic2.c.

◆ vic2_horizontal_scroll()

void vic2_horizontal_scroll ( Environment * _environment,
char * _displacement )

Definition at line 2016 of file vic2.c.

◆ vic2_hscroll_line()

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

Definition at line 2404 of file vic2.c.

◆ vic2_hscroll_screen()

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

Definition at line 2419 of file vic2.c.

◆ vic2_image_converter()

Variable * vic2_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 3262 of file vic2.c.

◆ vic2_image_size()

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

Definition at line 2465 of file vic2.c.

◆ vic2_initialization()

void vic2_initialization ( Environment * _environment)

Definition at line 2180 of file vic2.c.

◆ vic2_move_tiles()

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

Definition at line 4257 of file vic2.c.

◆ vic2_new_image()

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

Definition at line 4100 of file vic2.c.

◆ vic2_new_images()

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

Definition at line 4126 of file vic2.c.

◆ vic2_new_sequence()

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

Definition at line 4160 of file vic2.c.

◆ vic2_next_raster()

void vic2_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 851 of file vic2.c.

◆ vic2_next_raster_at()

void vic2_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 871 of file vic2.c.

◆ vic2_palette_extract()

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

Definition at line 4374 of file vic2.c.

◆ vic2_pget_color_vars()

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

Definition at line 1404 of file vic2.c.

◆ vic2_pset_int()

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

Definition at line 1345 of file vic2.c.

◆ vic2_pset_vars()

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

Definition at line 1370 of file vic2.c.

◆ vic2_put_image()

void vic2_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 3871 of file vic2.c.

◆ vic2_put_tile()

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

Definition at line 4236 of file vic2.c.

◆ vic2_put_tiles()

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

Definition at line 4298 of file vic2.c.

◆ vic2_raster_at()

void vic2_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 806 of file vic2.c.

◆ vic2_screen()

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

Definition at line 4451 of file vic2.c.

◆ vic2_screen_columns()

void vic2_screen_columns ( Environment * _environment,
char * _columns )

Definition at line 1464 of file vic2.c.

◆ vic2_screen_mode_enable()

int vic2_screen_mode_enable ( Environment * _environment,
ScreenMode * _screen_mode )

Definition at line 930 of file vic2.c.

◆ vic2_screen_off()

void vic2_screen_off ( Environment * _environment)

Definition at line 1436 of file vic2.c.

◆ vic2_screen_on()

void vic2_screen_on ( Environment * _environment)

Definition at line 1428 of file vic2.c.

◆ vic2_screen_rows()

void vic2_screen_rows ( Environment * _environment,
char * _rows )

Definition at line 1444 of file vic2.c.

◆ vic2_scroll()

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

Definition at line 4220 of file vic2.c.

◆ vic2_scroll_text()

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

Definition at line 2122 of file vic2.c.

◆ vic2_slice_image()

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

Definition at line 4370 of file vic2.c.

◆ vic2_sprite_at()

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

Definition at line 1663 of file vic2.c.

◆ vic2_sprite_color()

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

Definition at line 1915 of file vic2.c.

◆ vic2_sprite_common_color()

void vic2_sprite_common_color ( Environment * _environment,
int _index,
int _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 763 of file vic2.c.

◆ vic2_sprite_common_color_vars()

void vic2_sprite_common_color_vars ( 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 780 of file vic2.c.

◆ vic2_sprite_compress_horizontal()

void vic2_sprite_compress_horizontal ( Environment * _environment,
char * _sprite )

Definition at line 1814 of file vic2.c.

◆ vic2_sprite_compress_vertical()

void vic2_sprite_compress_vertical ( Environment * _environment,
char * _sprite )

Definition at line 1782 of file vic2.c.

◆ vic2_sprite_converter()

Variable * vic2_sprite_converter ( Environment * _environment,
char * _data,
int _width,
int _height,
int _depth,
RGBi * _color,
int _flags,
int _x_slot,
int _y_slot )

Definition at line 3318 of file vic2.c.

◆ vic2_sprite_data_from()

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

Definition at line 1511 of file vic2.c.

◆ vic2_sprite_data_set()

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

Definition at line 1484 of file vic2.c.

◆ vic2_sprite_disable()

void vic2_sprite_disable ( Environment * _environment,
char * _sprite )

Definition at line 1628 of file vic2.c.

◆ vic2_sprite_duplicate()

void vic2_sprite_duplicate ( Environment * _environment,
char * _sprite,
char * _original )

Definition at line 1551 of file vic2.c.

◆ vic2_sprite_enable()

void vic2_sprite_enable ( Environment * _environment,
char * _sprite )

Definition at line 1594 of file vic2.c.

◆ vic2_sprite_expand_horizontal()

void vic2_sprite_expand_horizontal ( Environment * _environment,
char * _sprite )

Definition at line 1750 of file vic2.c.

◆ vic2_sprite_expand_vertical()

void vic2_sprite_expand_vertical ( Environment * _environment,
char * _sprite )

Definition at line 1715 of file vic2.c.

◆ vic2_sprite_monocolor()

void vic2_sprite_monocolor ( Environment * _environment,
char * _sprite )

Definition at line 1881 of file vic2.c.

◆ vic2_sprite_multicolor()

void vic2_sprite_multicolor ( Environment * _environment,
char * _sprite )

Definition at line 1846 of file vic2.c.

◆ vic2_sprite_priority()

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

Definition at line 1953 of file vic2.c.

◆ vic2_text()

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

Definition at line 2140 of file vic2.c.

◆ vic2_textmap_at()

void vic2_textmap_at ( Environment * _environment,
char * _address )

Definition at line 1324 of file vic2.c.

◆ vic2_tile_at()

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

Definition at line 4326 of file vic2.c.

◆ vic2_tilemap_enable()

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

Definition at line 1264 of file vic2.c.

◆ vic2_tiles_at()

void vic2_tiles_at ( Environment * _environment,
char * _address )

Definition at line 1991 of file vic2.c.

◆ vic2_tiles_get()

void vic2_tiles_get ( Environment * _environment,
char * _result )

Definition at line 2069 of file vic2.c.

◆ vic2_use_tileset()

void vic2_use_tileset ( Environment * _environment,
char * _tileset )

Definition at line 4343 of file vic2.c.

◆ vic2_vertical_scroll()

void vic2_vertical_scroll ( Environment * _environment,
char * _displacement )

Definition at line 2007 of file vic2.c.

◆ vic2_wait_vbl()

void vic2_wait_vbl ( Environment * _environment,
char * _raster_line )

Definition at line 4085 of file vic2.c.