|
|
1.1 ! root 1: /* Here is a bunch of stuff used for setup mode */ ! 2: #define BRAM ((struct blop *) 0x600000) /* address of battery backed ram */ ! 3: ! 4: #define BRKKEY 0x80 ! 5: #define FUNC1KEY 0x82 ! 6: #define FUNC2KEY 0x83 ! 7: #define FUNC3KEY 0x84 ! 8: #define FUNC4KEY 0x85 ! 9: #define FUNC5KEY 0x86 ! 10: #define FUNC6KEY 0x87 ! 11: #define FUNC7KEY 0x88 ! 12: #define FUNC8KEY 0x89 ! 13: ! 14: #define BACKSPCKEY '\b' ! 15: #define SPACEKEY ' ' ! 16: #define SETUPKEY 0xae ! 17: #define TABKEY '\t' ! 18: ! 19: ! 20: #define BAUD 0 ! 21: #define RETKEY 1 ! 22: #define NEWLINE 2 ! 23: #define DUPLEX 3 ! 24: #define KEYTONE 4 ! 25: #define SCREENCOLOR 5 ! 26: #define PFKEYS 6 ! 27: #define NUMSETUPS 7 ! 28: #define NUMOPTS 6 ! 29: ! 30: #define CHECKSUM 2044 ! 31: ! 32: #define NUMBAUD 6 ! 33: #define NUMRETKEYS 3 ! 34: #define NUMNEWLINE 2 ! 35: #define NUMDUPLEX 2 ! 36: #define NUMKEYTONE 2 ! 37: #define NUMSCREENCOLOR 2 ! 38: #define NUMPFKEYS 8 ! 39: #define PFKEYSIZE 50 ! 40: ! 41: #define VALBAUD BRAM->opts.opt_array[BAUD].byte ! 42: #define VALRETKEY BRAM->opts.opt_array[RETKEY].byte ! 43: #define VALNEWLINE BRAM->opts.opt_array[NEWLINE].byte ! 44: #define VALDUPLEX BRAM->opts.opt_array[DUPLEX].byte ! 45: #define VALKEYTONE BRAM->opts.opt_array[KEYTONE].byte ! 46: #define VALSCREENCOLOR BRAM->opts.opt_array[SCREENCOLOR].byte ! 47: #define VALCHECK1 BRAM->opts.opt_array[CHECKSUM].byte ! 48: #define VALCHECK2 BRAM->opts.opt_array[CHECKSUM+1].byte ! 49: #define VALCHECK3 BRAM->opts.opt_array[CHECKSUM+2].byte ! 50: #define VALCHECK4 BRAM->opts.opt_array[CHECKSUM+3].byte ! 51: #define VALCAPS BRAM->capslock.byte ! 52: #define VALNUM BRAM->numlock.byte ! 53: #define VALDWNLDFLAG BRAM->dwnldflag.byte ! 54: #define VALMAXADDR BRAM->bmaxaddr.byte ! 55: ! 56: struct bram_mem { ! 57: int:16; unsigned char byte; ! 58: int:8; ! 59: }; ! 60: struct blop { ! 61: union blip{ ! 62: struct vals { ! 63: int:16; unsigned char baud; ! 64: int:8; ! 65: int:16; unsigned char retkey; ! 66: int:8; ! 67: int:16; unsigned char newline; ! 68: int:8; ! 69: int:16; unsigned char duplex; ! 70: int:8; ! 71: int:16; unsigned char keytone; ! 72: int:8; ! 73: int:16; unsigned char screencolor; ! 74: int:8; ! 75: } individ; ! 76: struct bram_mem opt_array[NUMOPTS]; ! 77: } opts; ! 78: struct bram_mem pfkeys[NUMPFKEYS][PFKEYSIZE+1]; /* can init partly? */ ! 79: struct bram_mem numlock; /* num lock flag */ ! 80: struct bram_mem capslock; /* caps lock flag */ ! 81: struct bram_mem dwnldflag; /* 0 = stand-alone, 1=program loaded */ ! 82: struct bram_mem bmaxaddr; /* 0 = 256K Mem, 1 = 1Meg */ ! 83: } ; ! 84: #define SETUP_HEADINGS "SPEED CR DEF NL DEF DUPLEX TONE BACKGROUND (Hit pfkey to edit value)" ! 85: ! 86: /* next come the displayed values... all default values are first */ ! 87: #ifdef SETUP_OWN ! 88: long maxaddr[2] = {0x740000, 0x800000}; /* last valid memory address */ ! 89: /*short curpos[NUMSETUPS] = {0, 10, 20, 30, 40, 52, 61}; /* cursor positions: */ ! 90: /* if this simple use formula */ ! 91: ! 92: char baud_speeds[NUMBAUD] = { (char) BD1200BPS, (char) BD2400BPS, (char) BD4800BPS, ! 93: (char) BD9600BPS, (char) BD19200BPS, (char) BD300BPS}; ! 94: char *val_baud[NUMBAUD] = {" 1200"," 2400"," 4800"," 9600","19200"," 300"}; ! 95: char *val_retkey[NUMRETKEYS] = { " CR", " LF", "CR/LF" }; ! 96: char *val_newline[NUMNEWLINE] = { "INDEX", " NL " }; ! 97: char *val_duplex[NUMDUPLEX] = { " FULL", " HALF" }; ! 98: char *val_keytone[NUMKEYTONE] = { " ON", "OFF" }; ! 99: char *val_screencolor[NUMSCREENCOLOR] = { " DARK", "LIGHT"}; ! 100: ! 101: char **val_indx[NUMOPTS] = { val_baud, val_retkey, val_newline, val_duplex, ! 102: val_keytone, val_screencolor } ; ! 103: ! 104: char val_maxes[NUMOPTS] = { (char) NUMBAUD, (char) NUMRETKEYS, ! 105: (char) NUMNEWLINE, (char) NUMDUPLEX, ! 106: (char) NUMKEYTONE, (char) NUMSCREENCOLOR }; ! 107: #else ! 108: extern char baud_speeds[]; ! 109: extern char *val_baud[]; ! 110: extern char *val_retkey[]; ! 111: extern char *val_newline[]; ! 112: extern char *val_duplex[]; ! 113: extern char *val_keytone[]; ! 114: extern char *val_screencolor[]; ! 115: extern char *val_pfkeys[]; ! 116: extern char **val_indx[]; ! 117: extern char val_maxes[]; ! 118: /*extern short curpos[];*/ ! 119: extern long maxaddr[]; ! 120: #endif ! 121: ! 122: /* QUESTION???? How do we determine factory default? Is bram pre-setup, or ! 123: somehow initially invalid? How do we determine this? write a "im ready" ! 124: pattern somewhere in cmos? */ ! 125: ! 126: /* Font properties */ ! 127: #define CW 9 /* width of a character */ ! 128: #define NS 14 /* newline size; height of a character */ ! 129: ! 130: #define XMARGIN 3 /* inset from border */ ! 131: #define YMARGIN 3
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.