aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/parisc/hppa_hardware.h5
-rw-r--r--src/parisc/parisc.c12
2 files changed, 10 insertions, 7 deletions
diff --git a/src/parisc/hppa_hardware.h b/src/parisc/hppa_hardware.h
index 5edf577..c036d46 100644
--- a/src/parisc/hppa_hardware.h
+++ b/src/parisc/hppa_hardware.h
@@ -1,4 +1,5 @@
/* HPPA cores and system support chips. */
+/* Be aware: This file is shared as-is with seabios-hppa. */
#ifndef HW_HPPA_HPPA_HARDWARE_H
#define HW_HPPA_HPPA_HARDWARE_H
@@ -40,8 +41,8 @@
#define FW_CFG_IO_BASE 0xfffa0000
-#define PORT_SERIAL1 (DINO_UART_HPA + 0x800)
-#define PORT_SERIAL2 (LASI_UART_HPA + 0x800)
+#define PORT_SERIAL1 (LASI_UART_HPA + 0x800)
+#define PORT_SERIAL2 (DINO_UART_HPA + 0x800)
#define HPPA_MAX_CPUS 16 /* max. number of SMP CPUs */
#define CPU_CLOCK_MHZ 250 /* emulate a 250 MHz CPU */
diff --git a/src/parisc/parisc.c b/src/parisc/parisc.c
index b679954..deb9ce6 100644
--- a/src/parisc/parisc.c
+++ b/src/parisc/parisc.c
@@ -31,7 +31,7 @@
#include "vgabios.h"
-#define SEABIOS_HPPA_VERSION 5
+#define SEABIOS_HPPA_VERSION 6
/*
* Various variables which are needed by x86 code.
@@ -535,7 +535,7 @@ static void parisc_serial_out(char c)
for (;;) {
if (c == '\n')
parisc_serial_out('\r');
- const portaddr_t addr = PORT_SERIAL1;
+ const portaddr_t addr = PARISC_SERIAL_CONSOLE;
u8 lsr = inb(addr+SEROFF_LSR);
if ((lsr & 0x60) == 0x60) {
// Success - can write data
@@ -1823,7 +1823,7 @@ static void menu_loop(void)
{
int scsi_boot_target;
char input[24];
- char *c;
+ char *c, reply;
// snprintf(input, sizeof(input), "BOOT FWSCSI.%d.0", boot_drive->target);
again:
@@ -1877,9 +1877,11 @@ again2:
input[0] = '\0';
enter_text(input, 1);
parisc_putchar('\n');
- if (input[0] == 'C' || input[0] == 'c')
+ reply = input[0];
+ if (reply == 'C' || reply == 'c')
goto again2;
- if (input[0] == 'Y' || input[0] == 'y')
+ // allow Z as Y. It's the key used on german keyboards.
+ if (reply == 'Y' || reply == 'y' || reply == 'Z' || reply == 'z')
interact_ipl = 1;
}