c128lib Labels
Labels definition for C128
Loading...
Searching...
No Matches
vic2.asm File Reference

Vic2 module. More...

Namespaces

namespace  Vic2
 

Variables

label VIC2 = $D000
 
label SPRITE_0_X = VIC2 + $00
 
label SPRITE_0_Y = VIC2 + $01
 
label SPRITE_1_X = VIC2 + $02
 
label SPRITE_1_Y = VIC2 + $03
 
label SPRITE_2_X = VIC2 + $04
 
label SPRITE_2_Y = VIC2 + $05
 
label SPRITE_3_X = VIC2 + $06
 
label SPRITE_3_Y = VIC2 + $07
 
label SPRITE_4_X = VIC2 + $08
 
label SPRITE_4_Y = VIC2 + $09
 
label SPRITE_5_X = VIC2 + $0A
 
label SPRITE_5_Y = VIC2 + $0B
 
label SPRITE_6_X = VIC2 + $0C
 
label SPRITE_6_Y = VIC2 + $0D
 
label SPRITE_7_X = VIC2 + $0E
 
label SPRITE_7_Y = VIC2 + $0F
 
label SPRITE_MSB_X = VIC2 + $10
 
label CONTROL_1 = VIC2 + $11
 
label RASTER = VIC2 + $12
 
label LIGHTPEN_X = VIC2 + $13
 
label LIGHTPEN_Y = VIC2 + $14
 
label SPRITE_ENABLE = VIC2 + $15
 
label CONTROL_2 = VIC2 + $16
 
label SPRITE_EXPAND_Y = VIC2 + $17
 
label MEMORY_CONTROL = VIC2 + $18
 
label IRR = VIC2 + $19
 
label IMR = VIC2 + $1A
 
label SPRITE_PRIORITY = VIC2 + $1B
 
label SPRITE_COL_MODE = VIC2 + $1C
 
label SPRITE_EXPAND_X = VIC2 + $1D
 
label SPRITE_2S_COLLISION = VIC2 + $1E
 
label SPRITE_2B_COLLISION = VIC2 + $1F
 
label BORDER_COL = VIC2 + $20
 
label BG_COL_0 = VIC2 + $21
 
label BG_COL_1 = VIC2 + $22
 
label BG_COL_2 = VIC2 + $23
 
label BG_COL_3 = VIC2 + $24
 
label SPRITE_COL_0 = VIC2 + $25
 
label SPRITE_COL_1 = VIC2 + $26
 
label SPRITE_0_COLOR = VIC2 + $27
 
label SPRITE_1_COLOR = VIC2 + $28
 
label SPRITE_2_COLOR = VIC2 + $29
 
label SPRITE_3_COLOR = VIC2 + $2A
 
label SPRITE_4_COLOR = VIC2 + $2B
 
label SPRITE_5_COLOR = VIC2 + $2C
 
label SPRITE_6_COLOR = VIC2 + $2D
 
label SPRITE_7_COLOR = VIC2 + $2E
 
label XSCAN = VIC2 + $2F
 
label CLKRATE = VIC2 + $30
 
label SPRITE_MOTION_0 = $117E
 
label SPRITE_MOTION_1 = $1189
 
label SPRITE_MOTION_2 = $1194
 
label SPRITE_MOTION_3 = $119F
 
label SPRITE_MOTION_4 = $11AA
 
label SPRITE_MOTION_5 = $11B5
 
label SPRITE_MOTION_6 = $11C0
 
label SPRITE_MOTION_7 = $11CB
 
label SPRITE_MOTION_OFFSET = $0B
 
label SPRITE_MAIN_DIR_UP = $00
 
label SPRITE_MAIN_DIR_RIGHT = $01
 
label SPRITE_MAIN_DIR_DOWN = $02
 
label SPRITE_MAIN_DIR_LEFT = $03
 
label SPRITE_MASK_0 = %00000001
 
label SPRITE_MASK_1 = %00000010
 
label SPRITE_MASK_2 = %00000100
 
label SPRITE_MASK_3 = %00001000
 
label SPRITE_MASK_4 = %00010000
 
label SPRITE_MASK_5 = %00100000
 
label SPRITE_MASK_6 = %01000000
 
label SPRITE_MASK_7 = %10000000
 
label SHADOW_VIC2 = $11D6
 
label SHADOW_SPRITE_0_X = SHADOW_VIC2 + $00
 
label SHADOW_SPRITE_0_Y = SHADOW_VIC2 + $01
 
label SHADOW_SPRITE_1_X = SHADOW_VIC2 + $02
 
label SHADOW_SPRITE_1_Y = SHADOW_VIC2 + $03
 
label SHADOW_SPRITE_2_X = SHADOW_VIC2 + $04
 
label SHADOW_SPRITE_2_Y = SHADOW_VIC2 + $05
 
label SHADOW_SPRITE_3_X = SHADOW_VIC2 + $06
 
label SHADOW_SPRITE_3_Y = SHADOW_VIC2 + $07
 
label SHADOW_SPRITE_4_X = SHADOW_VIC2 + $08
 
label SHADOW_SPRITE_4_Y = SHADOW_VIC2 + $09
 
label SHADOW_SPRITE_5_X = SHADOW_VIC2 + $0A
 
label SHADOW_SPRITE_5_Y = SHADOW_VIC2 + $0B
 
label SHADOW_SPRITE_6_X = SHADOW_VIC2 + $0C
 
label SHADOW_SPRITE_6_Y = SHADOW_VIC2 + $0D
 
label SHADOW_SPRITE_7_X = SHADOW_VIC2 + $0E
 
label SHADOW_SPRITE_7_Y = SHADOW_VIC2 + $0F
 
label SHADOW_SPRITE_MSB_X = SHADOW_VIC2 + $10
 
label SHADOW_SPRITE_2S_COLLISION = SHADOW_VIC2 + $11
 
label SHADOW_SPRITE_2B_COLLISION = SHADOW_VIC2 + $12
 
label SHADOW_LIGHTPEN_X = SHADOW_VIC2 + $13
 
label SHADOW_LIGHTPEN_Y = SHADOW_VIC2 + $14
 
label COLOR_RAM = $D800
 
label TOP_SCREEN_RASTER_POS = 50
 
label RASTER_MAX_PAL = 312
 
label RASTER_MAX_NTSC = 263
 
label CONTROL_1_RASTER8 = %10000000
 
label CONTROL_1_ECM = %01000000
 
label CONTROL_1_BMM = %00100000
 
label CONTROL_1_DEN = %00010000
 
label CONTROL_1_RSEL = %00001000
 
label CONTROL_2_RES = %00100000
 
label CONTROL_2_MCM = %00010000
 
label CONTROL_2_CSEL = %00001000
 
label IRR_IRQ = %10000000
 
label IRR_LIGHTPEN = %00001000
 
label IRR_SPR_SPR = %00000100
 
label IRR_SPR_BG = %00000010
 
label IRR_RASTER = %00000001
 
label IMR_LIGHTPEN = %00001000
 
label IMR_SPR_SPR = %00000100
 
label IMR_SPR_BG = %00000010
 
label IMR_RASTER = %00000001
 
label STANDARD_TEXT_MODE = %000
 
label MULTICOLOR_TEXT_MODE = %001
 
label STANDARD_BITMAP_MODE = %010
 
label MULTICOLOR_BITMAP_MODE = %011
 
label EXTENDED_TEXT_MODE = %100
 
label MODE_ECM = %100
 
label MODE_BMM = %010
 
label MODE_MCM = %001
 
label TEXT_SCREEN_WIDTH = 40
 
label BASIC_IRQ_FLAG
 
label VIC_SCREEN_CHAR_SHADOW = $0A2C
 
label VIC_BITMAP_VIDEO_SHADOW = $0A2D
 
label CHAR_MEM_0000 = %00000000
 
label CHAR_MEM_0800 = %00000010
 
label CHAR_MEM_1000 = %00000100
 
label CHAR_MEM_1800 = %00000110
 
label CHAR_MEM_2000 = %00001000
 
label CHAR_MEM_2800 = %00001010
 
label CHAR_MEM_3000 = %00001100
 
label CHAR_MEM_3800 = %00001110
 
label SCREEN_MEM_0000 = %00000000
 
label SCREEN_MEM_0400 = %00010000
 
label SCREEN_MEM_0800 = %00100000
 
label SCREEN_MEM_0C00 = %00110000
 
label SCREEN_MEM_1000 = %01000000
 
label SCREEN_MEM_1400 = %01010000
 
label SCREEN_MEM_1800 = %01100000
 
label SCREEN_MEM_1C00 = %01110000
 
label SCREEN_MEM_2000 = %10000000
 
label SCREEN_MEM_2400 = %10010000
 
label SCREEN_MEM_2800 = %10100000
 
label SCREEN_MEM_2C00 = %10110000
 
label SCREEN_MEM_3000 = %11000000
 
label SCREEN_MEM_3400 = %11010000
 
label SCREEN_MEM_3800 = %11100000
 
label SCREEN_MEM_3C00 = %11110000
 
label BITMAP_MEM_0000 = %00000000
 
label BITMAP_MEM_2000 = %00001000
 

Detailed Description

Vic2 module.

This file contains labels that map to the VIC registers of the Commodore 128.; Labels are intended to be used in assembly for 6502 with KickAssembler.

The Commodore 128 has a VIC-IIe chip, which is an enhanced version of the VIC-II chip found in the Commodore 64. The VIC-IIe chip controls the video output of the computer, including the screen resolution, color, character set, and sprites.

https://c128lib.github.io/Reference/Vic

https://c128lib.github.io/Reference/D000

Author
Raffaele Intorcia raffa.nosp@m.ele..nosp@m.intor.nosp@m.cia@.nosp@m.gmail.nosp@m..com

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Date
2024