memory.inc

     1:  .include "../basic/basic-memory.inc"
     2:  
     3:          .segment "C6510_ZP": zeropage
     4:  
     5:  zD6510:         .res 1
     6:  zR6510:         .res 1
     7:  
     8:  lVICSCN         := $0400
     9:  lSPNTRN         := $07F8
    10:  
    11:  CARTRIDGE       := $8000
    12:  CART_RESET      := CARTRIDGE + 0
    13:  CART_NMI        := CARTRIDGE + 2
    14:  CART_MAGIC      := CARTRIDGE + 4
    15:  
    16:  .include "../vic-ii.inc"
    17:  
    18:  VIC           := $D000
    19:  
    20:  .include "../sid.inc"
    21:  
    22:  SID           := $D400
    23:  
    24:  COLORRAM      := $D800
    25:  
    26:  .include "../cia.inc"
    27:  
    28:  CIA1          := $DC00
    29:  
    30:  CIA2          := $DD00
    31:  
    32:  CIA2_PA_B_VA14          := $01
    33:  CIA2_PA_B_VA15          := $02
    34:  CIA2_PA_B_RS232_TXD     := $04
    35:  CIA2_PA_B_IEC_ATN_OUT   := $08
    36:  CIA2_PA_B_IEC_CLK_OUT   := $10
    37:  CIA2_PA_B_IEC_DATA_OUT  := $20
    38:  CIA2_PA_B_IEC_CLK_IN    := $40
    39:  CIA2_PA_B_IEC_DATA_IN   := $80
    40:  
    41:  CIA2_PB_B_RS232_RXD     := $01 ; also connected with -FLAG
    42:  CIA2_PB_B_RS232_RTS     := $02
    43:  CIA2_PB_B_RS232_DTR     := $04
    44:  CIA2_PB_B_RS232_RING    := $08
    45:  CIA2_PB_B_RS232_DCD     := $10
    46:  CIA2_PB_B_RS232_PB5     := $20 ; unused
    47:  CIA2_PB_B_RS232_CTS     := $40
    48:  CIA2_PB_B_RS232_DSR     := $80
    49:  
    50:  
    51:  P6510_B_LORAM           := $01
    52:  P6510_B_HIRAM           := $02
    53:  P6510_B_CHAREN          := $04
    54:  P6510_B_CASS_WRITE      := $08
    55:  P6510_B_CASS_SENSE      := $10
    56:  P6510_B_CASS_MOTOR      := $20
    57:  P6510_B_UNUSED          := $C0
    58:  
    59:  P6510_B_MASK            := ~ P6510_B_UNUSED
    60:  
    61:  IOBASE        := CIA1
    62:  
    63:  FILE_KEYBOARD := 0
    64:  FILE_TAPE     := 1
    65:  FILE_RS232    := 2
    66:  FILE_SCREEN   := 3
    67:  FILE_IEC      := 4
    68:  
    69:  KEY_SHIFTRUN  := $83
    70:  
    71:  IEC_REG       := CIA2 + CIA_O_PA
    72:  IEC_DDR       := CIA2 + CIA_O_DDRA
    73:  
    74:  IEC_B_ATN_OUT  := CIA2_PA_B_IEC_ATN_OUT
    75:  IEC_B_CLK_OUT  := CIA2_PA_B_IEC_CLK_OUT
    76:  IEC_B_DATA_OUT := CIA2_PA_B_IEC_DATA_OUT
    77:  IEC_B_CLK_IN   := CIA2_PA_B_IEC_CLK_IN
    78:  IEC_B_DATA_IN  := CIA2_PA_B_IEC_DATA_IN
    79:  
    80:  IEC_REG_ATN_OUT      := CIA2 + CIA_O_PA
    81:  IEC_REG_DATA_CLK_OUT := CIA2 + CIA_O_PA
    82:  IEC_REG_DATA_CLK_IN  := CIA2 + CIA_O_PA
    83:  
    84:  IEC_TIMER_LO            := CIA1 + CIA_O_TBLO
    85:  IEC_TIMER_HI            := CIA1 + CIA_O_TBHI
    86:  
    87:  IEC_TIMER_FLAG_REG      := CIA1 + CIA_O_ICR
    88:  IEC_TIMER_FLAG_B        := CIA_ICR_B_TB
    89:  
    90:  TAPE_REG                := zR6510
    91:  TAPE_DDR                := zD6510
    92:  TAPE_B_WRITE            := P6510_B_CASS_WRITE
    93:  TAPE_B_SENSE            := P6510_B_CASS_SENSE
    94:  TAPE_B_MOTOR_ON_ALL     := P6510_B_CASS_MOTOR
    95:  TAPE_B_MOTOR_ON         := P6510_B_CASS_MOTOR
    96:  TAPE_B_MOTOR_OFF_AND    := ~ P6510_B_CASS_MOTOR & P6510_B_MASK
    97:  
    98:  TAPE_REG_WRITE          := zR6510
    99:  TAPE_REG_SENSE          := zR6510
   100:  TAPE_REG_MOTOR          := zR6510
   101:  TAPE_REG_ICR            := CIA1 + CIA_O_ICR
   102:  TAPE_REG_ICR_B_CLEARALL := CIA_ICR_BW_UNSET | $7F
   103:  TAPE_REG_ICR_B_CASSREAD := CIA_ICR_BW_SET | CIA_ICR_B_FLAG
   104:  TAPE_REG_ICR_B_WR_TIMER := CIA_ICR_BW_SET | CIA_ICR_B_TB
   105:  TAPE_REG_ICR_B_SET_3    := CIA_ICR_BW_SET | CIA_ICR_B_TA
   106:  TAPE_REG_ICR_B_UNSET_3  := CIA_ICR_BW_UNSET | CIA_ICR_B_TA
   107:  
   108:  TAPE_TIMER1_LO          := CIA1 + CIA_O_TBLO
   109:  TAPE_TIMER1_HI          := CIA1 + CIA_O_TBHI
   110:  TAPE_TIMER2_LO          := CIA1 + CIA_O_TALO
   111:  TAPE_TIMER2_HI          := CIA1 + CIA_O_TAHI
   112:  TAPE_TIMER1_CONST       := $16
   113:  
   114:  KEYB_ROW                := CIA1 + CIA_O_PA
   115:  KEYB_COL                := CIA1 + CIA_O_PB
   116:  KEYB_COL_FOR_STOP       := KEYB_COL
   117:  
   118:  KEYB_ROW_CTRL           := $7F
   119:  KEYB_COL_CTRL           := $FB
   120:  KEYB_ROW_STOP           := $BD
   121:  KEYB_ROW_STANDARD       := $7F
   122:  KEYB_CHECK_STOP         := $7F
   123:  
   124:  RS232_TXD_REG           := CIA2 + CIA_O_PA
   125:  RS232_TXD_BIT           := CIA2_PA_B_RS232_TXD
   126:  
   127:  RS232_REG_1             := CIA2 + CIA_O_PB
   128:  RS232_REG_2             := CIA2 + CIA_O_PB
   129:  RS232_TIMER_LO          := CIA2 + CIA_O_TALO
   130:  RS232_TIMER_HI          := CIA2 + CIA_O_TAHI
Valid XHTML 1.0 Strict
memory.inc.html; generated on Fri Sep 18 21:44:54 2015 by ca65html
uz@cc65.org