AppleIIAsm-Collection/documentation/AppleIIAsm Library Collecti.../0.6.1/8.0 Quick_Reference_D3_MAC....

4.7 KiB

Disk 3 Macros: The Array Collection

Disk 3: ARRAYS contains four macro files that have the same kinds of macros for different kinds of arrays; that is, each macro file is dedicated to an array of 8-bits or 16-bits and one or two dimensions, and contains the functionality to initialize an array, get data from it and put data into it. The are as follows:

  • MAC.ARR8B1D.ASM
    • This packages contains DIM, GET and PUT macros for eight-bit, one-dimensional arrays.
  • MAC.ARR8B2D.ASM
    • This packages contains DIM, GET and PUT macros for eight-bit, two-dimensional arrays.
  • MAC.ARR16B1D.ASM
    • This packages contains DIM, GET and PUT macros for sixteen-bit, one-dimensional arrays.
  • MAC.ARR16B2S.ASM
    • This packages contains DIM, GET and PUT macros for sixteen-bit, two-dimensional arrays.

MAC.ARR8B1D.ASM

MACRO DEPENDENCY PARAMETERS ACTION DESTROYS CYCLES BYTES
DIM81 ADIM81 ]1 = Array addr
]2 = # of elements
]3 = element size
]4 = fill value
Initialize a 1D, 8-bit array NZCV 234+ 146
GET81 AGET81 ]1 = Array addr
]2 = Element Index
Get a value from an element in a 1D, 8-bit array. NZCV 193+ 125
PUT81 APUT81 ]1 = Source addr
]2 = Array addr
]3 = Element Index
Put a value into an element in a 1D, 8-bit array. NZCV 216+ 131

MAC.ARR8B2D.ASM

MACRO DEPENDENCY PARAMETERS ACTION DESTROYS CYCLES BYTES
DIM82 ADIM82 ]1 = Array addr
]2 = 1st dimension length
]3 = 2nd dimension length
]4 = fill value
Initialize a 2D, 8-bit array NZCV 355+ 228
GET82 AGET82 ]1 = Array addr
]2 = 1st Dimension Index
]3 = 2nd Dimension Index
Get a value from an element in a 2D, 8-bit array. NZCV 340+ 255
PUT82 APUT82 ]1 = Source addr
]2 = Destination addr
]3 = 1st Dimension Index
4] = 2nd Dimension Index
Put a value into an element in a 2D, 8-bit array. NZCV 352+ 223

MAC.ARR16B1D.ASM

MACRO DEPENDENCY PARAMETERS ACTION DESTROYS CYCLES BYTES
DIM161 ADIM161 ]1 = Array Addr
]2 = # of elements
]3 = Element length
]4 = Fill Value
Initialize a 1D, 16-bit array NZCV 271+ 165
GET161 AGET161 ]1 = Array addr
]2 = Element Index
Get a value from an element in a 1D, 16-bit array. NZCV 223+ 130
PUT161 APUT161 ]1 = Source addr
]2 = Array addr
]3 = Element index
Put a value into an element in a 1D, 16-bit array. NZCV 238+ 148

MAC.ARR16B2D.ASM

MACRO DEPENDENCY PARAMETERS ACTION DESTROYS CYCLES BYTES
DIM162 ADIM162 ]1 = Array Address
]2 = First Dimension Element Count
]3 = Second Dimension Element Count
]4 = Byte size of Elements
]5 = Default Fill Value
Initialize a 2D, 16-bit array NZCV 464+ 373
GET162 AGET162 ]1 = Array Address
]2 = First Dimension Element Address
]3 = Second Dimension Element Address
Get a value from an element in a 2D, 16-bit array. NZCV 436+ 263
PUT162 APUT162 ]1 = Source Address
]2 = Destination Array Address
]3 = First Dimension Element Address
]4 = Second Dimension Element Address
Put a value into an element in a 2D, 16-bit array. NZCV 352+ 223

Return to Table of Contents