/******************************************************************** /******************************************************************** / THE IMPORTANT ZERO PAGE STUFF *0 INTR, 0 / INTERRUPT LOCATION JMP I XIHAND / JUMP TO INTERRUPT HANDLER XIHAND, IHAND / POINTER TO INTERRUPT HANDLER *10 AUTO0, 0 AUTO1, 0 AUTO2, 0 AUTO3, 0 AUTO4, 0 AUTO5, 0 AUTO6, 0 AUTO7, 0 *40 / MAJOR POINERS SPTR, DATA0 / POINTER TO SOURCE DATA (GET, COUNT) TPTR, DATA1 / POINTER TO TARGET DATA (SET, RESET) DPTR, DATA0 / POINTER TO DUMP DATA /************************************************* DFLAGS, 0 / DISPLAY CONTROL WORD /************************************************* / TEMPORARY CHICKENS / KEYBOARD COMMANDS CMKILL, 0 CMDUMP, 0 /******************************************************************** / ZERO PAGE CONSTANTS K7, 7 K10, 10 K77, 77 K200, 200 K377, 377 K7700, 7700 KROWS, PROWS KCOLS, PCOLS KDEAD, DEAD KALIVE, ALIVE KNMCO, 1-PCOLS / NEGATIVE OF LAST COLUMN ADDRESS KNMROW, 1-PROWS / NEGATIVE OF LAST ROW ADDRESS KBORD, BORDER KCOLM1, -1 KCOLP1, 1 KROWM1, -100 KROWP1, 100 /******************************************************************** / ZERO PAGE POINTERS AND SHORTCUTS XDUMPS, DUMPS / START DATA DUMP XDUMPT, DUMPT / START DATA DUMP XDUMP, DUMP XCALC, CALC XGET, GET / GET A CELL STATE XSET, SET / SET A CELL TO LIVING XCLEAR, CLEAR / SET A CELL TO DEAD XEXIT, EXIT XCOUNT, COUNT XDINIT, DINIT /************************************************* / POINTERS TO DISPLAY API ROUTINES XDSSET, DSSET / SET THE CURSOR TO A SPECIFIED POSITION XDCLS, DSCLS / CLEAR SCREEN XDSEOL, DSEOL / CLEAR FROM CURSOR POSITION TO END OF LINE XDSEOS, DSEOS / CLEAR FROM CURSOR POSITION TO END OF SCREEN XDSOUT, DSOUT / SEND A CHARACTER TO THE SCREEN XDSBEL, DSBEL / MAKE SOME NOISE