/* * display boot message */ EXPORT void dispTitle( void ) { const char **p; DSP_S("\n\n"); for ( p = Title; *p != NULL; p++ ) DSP_S(*p); DSP_S("\n\n"); }
/* * display help message with disk name listing */ LOCAL void prDiskHelp( const HELP *help ) { const UB *devnm; UW attr; W i; DSP_S(help->msg); DSP_S(" device :"); for ( i = 0;; ++i ) { devnm = ( help == &helpBD )? bootDevice(i): diskList(i, &attr); if ( devnm == NULL ) break; /* exclude devices that can not be specified */ if ( help == &helpWD && (attr & DA_RONLY) != 0 ) continue; DSP_F2(CH,' ', S,devnm); } DSP_LF; }
/* * display help message for WROM command */ LOCAL void prWRomHelp( const HELP *help ) { const MEMSEG *rom, *ram; UW ram_top, sz; rom = MemArea(MSA_FROM, 1); ram = MemArea(MSA_OS, 1); if ( rom == NULL || ram == NULL ) { DSP_S("Not Supported\n"); return; } ram_top = (ram->top + FROM_SECSZ - 1) & ~(FROM_SECSZ - 1); sz = rom->end - rom->top; if ( sz > ram->end - ram_top ) sz = ram->end - ram_top; DSP_S(help->msg); DSP_F5(S," rom_addr : 0x", 08X,rom->top, S," - 0x", 08X,(rom->end-FROM_SECSZ), CH,'\n'); DSP_F5(S," data_ram_addr : 0x", 08X,ram_top, S," - 0x", 08X,(ram->end-FROM_SECSZ), CH,'\n'); DSP_F5(S," block_count : 1 - ", D,(sz / FROM_SECSZ), S," (1 block = ", D,(FROM_SECSZ / 1024), S,"KB)\n"); }
/* List the values of register (group) regno < 0 : default group (not specified) */ EXPORT void dispRegister(W regno) { W i, j, n, id, rid; if (regno >= N_REGS) return; id = (regno < 0) ? (R_GRP | R_GEN) : regTab[regno].id; for (n = i = 0; i < N_ACTREGS; i++) { rid = regTab[i].id; if (!(i == regno || ((id & R_GRP) && (rid & id)))) continue; if (n != 0 && (rid & R_GAP)) DSP_LF; if (n++ & 0x0f) DSP_S(" "); for (j = 0; j < L_REGNM; j++) DSP_CH(regTab[i].name[j]); DSP_F2(S,": ", 08X,getRegister(i)); if (rid & R_LF) {DSP_LF; n = 0x10;} if ((id & R_GRP) == 0) break; } if (n & 0x0f) DSP_LF; }
/* * display simple help message */ LOCAL void prSimpleHelp( const HELP *help ) { DSP_S(help->msg); }