2 /********************************************************************
3 /********************************************************************
5 / GAME CONFIGURATION PARAMETERS
6 / CHANGE ONLY IF YOU KNOW WHAT YOU'RE DOING!
8 / SIZE OF THE PLAYING FIELD
9 / =========================
11 / THE PLAYING FIELD HAS A MAXIMUM SIZE OF 32 ROWS BY 64 COLUMNS.
13 / THE DATA IS ORGANIZED AS FOLLOWS:
14 / EVERY CELL OCCUPIES ONE BIT. THE CELLS OF EACH ROW ARE STORED IN
15 / A CONTIGUOUS PIECE OF MEMORY. BUT ONLY THE LOWER 8 BITS OF A WORD
17 / THE WHOLE GAME BUFFER CONSISTS OF 32 ROWS OF 8 WORDS EACH. THIS
18 / LEADS TO A MEMORY FOOTPRINT OF 256 WORDS.
19 / THERE'S ONE RESTRICTION: THE LAST COLUMN IS NOT USABLE DUE TO
20 / BORDER DETECTION. THAT MEANS THAT THE MAXIMUM SIZE OF THE ACTUAL
21 / CELL ROW IS ONLY 63!!!
22 / THE FOLLOWIN PARAMETERS DEFINE THE DIMENSIONS OF THE ACTUAL
23 / SIZE OF THE CELL ARRAY. KEEP IN MIND THAT THIS WILL NOT CHANGE
24 / THE MEMORY FOOTPRINT!
28 / CELL ADDRESS CODING:
30 / 0RR RRR CCC CCC <- AS USED THROUGHOUT THE PROGRAM
34 / C - COLUMN ADDRESS BIT
36 / COLUMN ADDRESS IS SPLIT INTO
41 / B - BIT IN WORD ADDRESS
43 / A CELL ADDRESS CAN BE TRANSLATED INTO A MEMORY OFFSET BY SIMPLY
44 / SHIFTING THREE BITS TO THE RIGHT AND MASKING WITH 0377:
48 / HERE THE LOWER 3 COLUMN ADDRESS BITS WHICH SPECIFY THE BIT ADDRESS
49 / IN A WORD ARE DISCARDED.
51 / HAS THE FIELD LIMITS OR IS IT ENDLESS? (CURRENTLY UNSUPPORTED!)
56 / BORDER BEHAVIOUR FOR LIMITED FIELD
57 / 0 - OFF FIELD POSITIONS ARE ASSUMED TO BE ALWAYS DEAD
58 / 1 - OFF FIELD POSITIONS ARE ASSUMED TO BE ALWAYS ALIFE
62 / CHARACTER CODES TO USE FOR CELL DISPLAY OUTPUT