#!/usr/bin/env python2
# I, Danny Milosavljevic, hereby place this file into the public domain.

"""

mode = registers[25]
B_graphics = (mode & 128) != 0
B_attributes = (mode & 64) != 0
B_fill_spacing_with_color = (mode & 32) != 0
pixel_width = ((mode >> 4) & 1) + 1
horz_smooth_scrolling = (mode & 15) # more is to the left
foreground_color_attr = registers[26] >> 4
background_color = registers[26] & 15
rowstride = registers[27]
chargen_addr8 = registers[28] >> 5 # in 8K steps
# ^ set bit 4 of registers[28] for 64 KiB ram
underline_line = registers[29] & 31
first_char_on_line = registers[34]
last_char_on_line = registers[35] # is smaller O_o
# DRAM refresh registers[36]

width = registers[1]
height = register[4] + 1 # + (registers[5] & 31)/???
TODO interlacing registers[8]
char_height = (registers[9] & 31) + 1
cursor_mode = (registers[10] >> 5) & 3 # 0=noblink, 1=invisible, 2=quickblink, 3=normalblink
cursor_beginning_line = (registers[10] & 31)
cursor_end_line = (registers[11] & 31) # exclusive
vram_addr = registers[12] * 256 + registers[13]
position = registers[14] * 256 + registers[15]
lightpen_vert_pos = registers[16] - 1
lightpen_horz_pos = registers[17] - 8
attr_addr = registers[20] * 256 + registers[21]
char_width = (registers[22] & 15) + 1 # visible
char_width_with_spacing = (registers[22] >> 4) + 1
char_height_with_spacing = (registers[23] & 31) + 1 # should be smaller than char_height
B_inverse_screen = (registers[24] & 64) != 0
#registers[24] also has blinking rate
vert_smooth_scrolling = (registers[24] & 31) # more is up

"""
