From c44644bb966bd0cf7e09d94b043814ea0740fe8f Mon Sep 17 00:00:00 2001 From: bellard Date: Wed, 6 Apr 2005 20:45:26 +0000 Subject: [PATCH] update (Blue Swirl) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1349 c046a42c-6fe2-441c-8c8c-71466251a162 --- pc-bios/proll.elf | Bin 41236 -> 137898 bytes pc-bios/proll.patch | 201 ++++++++++++++++++++++++-------------------- 2 files changed, 110 insertions(+), 91 deletions(-) diff --git a/pc-bios/proll.elf b/pc-bios/proll.elf index f960c83e61a3fea4336aecc7090dca5fb512db66..ac93c4be99f27c2336eea62a50121d196beb6d38 100644 GIT binary patch literal 137898 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 diff --git a/pc-bios/proll.patch b/pc-bios/proll.patch index 5f2e027d490..e72e0e45e34 100644 --- a/pc-bios/proll.patch +++ b/pc-bios/proll.patch @@ -1,6 +1,6 @@ -diff -ruN proll_18.orig/Makefile proll-patch7/Makefile +diff -ruN proll_18.orig/Makefile proll-patch8/Makefile --- proll_18.orig/Makefile 2002-09-13 14:16:59.000000000 +0000 -+++ proll-patch7/Makefile 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/Makefile 2004-11-13 15:50:49.000000000 +0000 @@ -4,6 +4,7 @@ make -C krups-ser all make -C espresso all @@ -14,14 +14,14 @@ diff -ruN proll_18.orig/Makefile proll-patch7/Makefile make -C espresso clean make -C espresso-ser clean + make -C qemu clean -diff -ruN proll_18.orig/qemu/Makefile proll-patch7/qemu/Makefile +diff -ruN proll_18.orig/qemu/Makefile proll-patch8/qemu/Makefile --- proll_18.orig/qemu/Makefile 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/qemu/Makefile 2005-03-02 16:41:50.000000000 +0000 ++++ proll-patch8/qemu/Makefile 2005-03-02 16:41:50.000000000 +0000 @@ -0,0 +1,122 @@ +# +# proll: +# qemu/Makefile - make PROLL for QEMU -+# $Id: proll.patch,v 1.3 2005-03-13 09:43:36 bellard Exp $ ++# $Id: proll.patch,v 1.4 2005-04-06 20:45:26 bellard Exp $ +# +# Copyright 1999 Pete Zaitcev +# This is Free Software is licensed under terms of GNU General Public License. @@ -140,9 +140,9 @@ diff -ruN proll_18.orig/qemu/Makefile proll-patch7/qemu/Makefile + +proll.aout: $(PROLLEXE) + $(ELFTOAOUT) -o proll.aout $(PROLLEXE) -diff -ruN proll_18.orig/qemu/head.S proll-patch7/qemu/head.S +diff -ruN proll_18.orig/qemu/head.S proll-patch8/qemu/head.S --- proll_18.orig/qemu/head.S 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/qemu/head.S 2005-03-02 15:30:47.000000000 +0000 ++++ proll-patch8/qemu/head.S 2005-03-02 15:30:47.000000000 +0000 @@ -0,0 +1,539 @@ +/** + ** Standalone startup code for Linux PROM emulator. @@ -150,7 +150,7 @@ diff -ruN proll_18.orig/qemu/head.S proll-patch7/qemu/head.S + ** This code is licensed under GNU General Public License. + **/ +/* -+ * $Id: proll.patch,v 1.3 2005-03-13 09:43:36 bellard Exp $ ++ * $Id: proll.patch,v 1.4 2005-04-06 20:45:26 bellard Exp $ + */ + +#include @@ -683,9 +683,9 @@ diff -ruN proll_18.orig/qemu/head.S proll-patch7/qemu/head.S +C_LABEL(ldb_bypass): + retl + lduba [%o0] ASI_M_BYPASS, %o0 -diff -ruN proll_18.orig/qemu/main.c proll-patch7/qemu/main.c +diff -ruN proll_18.orig/qemu/main.c proll-patch8/qemu/main.c --- proll_18.orig/qemu/main.c 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/qemu/main.c 2005-03-02 20:08:23.000000000 +0000 ++++ proll-patch8/qemu/main.c 2005-04-03 11:58:46.000000000 +0000 @@ -0,0 +1,173 @@ +/** + ** Proll (PROM replacement) @@ -755,7 +755,7 @@ diff -ruN proll_18.orig/qemu/main.c proll-patch7/qemu/main.c + printk_fn = vcon_write; + } + else { -+ vcon_zs_init(&dp0, 0x71100000); ++ vcon_zs_init(&dp0, 0x71100004); + printk_fn = vcon_zs_write; + } + @@ -860,10 +860,10 @@ diff -ruN proll_18.orig/qemu/main.c proll-patch7/qemu/main.c + hw_idprom = va_prom; +} + -diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c +diff -ruN proll_18.orig/qemu/openprom.c proll-patch8/qemu/openprom.c --- proll_18.orig/qemu/openprom.c 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/qemu/openprom.c 2005-03-02 20:09:57.000000000 +0000 -@@ -0,0 +1,646 @@ ++++ proll-patch8/qemu/openprom.c 2005-04-06 16:53:31.000000000 +0000 +@@ -0,0 +1,665 @@ +/* + * PROM interface support + * Copyright 1996 The Australian National University. @@ -1082,27 +1082,27 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + {NULL, NULL, -1} +}; + -+static const int prop_zs_intr[] = { 12, 0x0 }; ++static const int prop_zs_intr[] = { 0x2c, 0x0 }; +static const int prop_zs_reg[] = { + 0x0, 0x00000000, 0x00000008, +}; -+static const int prop_zs_addr = { 0x70000000 }; +static const int prop_zs_slave[] = { 1 }; ++static void *prop_zs_addr; +static const struct property propv_obio_zs[] = { + {"name", "zs", sizeof("zs")}, + {"reg", (char*)&prop_zs_reg[0], sizeof(prop_zs_reg) }, + {"slave", (char*)&prop_zs_slave[0], sizeof(prop_zs_slave) }, + {"device_type", "serial", sizeof("serial") }, + {"intr", (char*)&prop_zs_intr[0], sizeof(prop_zs_intr) }, -+ // {"address", (char*)&prop_zs_addr, sizeof(prop_zs_addr) }, ++ {"address", (char*)&prop_zs_addr, sizeof(prop_zs_addr) }, + {NULL, NULL, -1} +}; + -+static const int prop_zs1_intr[] = { 12, 0x0 }; ++static const int prop_zs1_intr[] = { 0x2c, 0x0 }; +static const int prop_zs1_reg[] = { + 0x0, 0x00100000, 0x00000008, +}; -+static const int prop_zs1_addr = { 0x70100000 }; ++static void *prop_zs1_addr; +static const int prop_zs1_slave[] = { 0 }; +static const struct property propv_obio_zs1[] = { + {"name", "zs", sizeof("zs")}, @@ -1110,7 +1110,7 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + {"slave", (char*)&prop_zs1_slave[0], sizeof(prop_zs1_slave) }, + {"device_type", "serial", sizeof("serial") }, + {"intr", (char*)&prop_zs1_intr[0], sizeof(prop_zs1_intr) }, -+ // {"address", (char*)&prop_zs1_addr, sizeof(prop_zs1_addr) }, ++ {"address", (char*)&prop_zs1_addr, sizeof(prop_zs1_addr) }, + {NULL, NULL, -1} +}; + @@ -1141,9 +1141,9 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c +static const int prop_espdma_reg[] = { + 0x4, 0x08400000, 0x00000010, +}; -+// Disabled, not implemented yet ++ +static const struct property propv_sbus_espdma[] = { -+ {"name", "xxxespdma", sizeof("xxxespdma")}, ++ {"name", "espdma", sizeof("espdma")}, + {"reg", (char*)&prop_espdma_reg[0], sizeof(prop_espdma_reg) }, + {NULL, NULL, -1} +}; @@ -1202,6 +1202,20 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + {NULL, NULL, -1} +}; + ++static const struct property propv_options[] = { ++ {"name", "options", sizeof("options")}, ++ {"screen-#columns", "80", sizeof("80")}, ++ {"screen-#rows", "25", sizeof("25")}, ++ {"tpe-link-test?", "true", sizeof("true")}, ++ {"ttya-mode", "9600,8,n,1,-", sizeof("9600,8,n,1,-")}, ++ {"ttya-ignore-cd", "true", sizeof("true")}, ++ {"ttya-rts-dtr-off", "false", sizeof("false")}, ++ {"ttyb-mode", "9600,8,n,1,-", sizeof("9600,8,n,1,-")}, ++ {"ttyb-ignore-cd", "true", sizeof("true")}, ++ {"ttyb-rts-dtr-off", "false", sizeof("false")}, ++ {NULL, NULL, -1} ++}; ++ +static const struct node nodes[] = { + { &null_properties, 1, 0 }, /* 0 = big brother of root */ + { propv_root, 0, 2 }, /* 1 "/" */ @@ -1215,33 +1229,18 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + { propv_sbus_espdma, 0, 10 }, /* 9 "/iommu/sbus/espdma" */ + { propv_sbus_espdma_esp, 0, 0 }, /* 10 "/iommu/sbus/espdma/esp" */ + { propv_cpu, 12, 0 }, /* 11 "/STP1012PGA" */ -+ { propv_obio, 0, 13 }, /* 12 "/obio" */ ++ { propv_obio, 22, 13 }, /* 12 "/obio" */ + { propv_obio_int, 14, 0 }, /* 13 "/obio/interrupt" */ + { propv_obio_cnt, 15, 0 }, /* 14 "/obio/counter" */ + { propv_obio_eep, 16, 0 }, /* 15 "/obio/eeprom" */ + { propv_obio_auxio, 17, 0 }, /* 16 "/obio/auxio" */ -+ { propv_obio_zs, 18, 0 }, /* 17 "/obio/zs@0,0" */ -+ { propv_obio_zs1, 19, 0 }, /* 18 "/obio/zs@0,100000" */ ++ { propv_obio_zs1, 18, 0 }, /* 17 "/obio/zs@0,100000" ++ Must be before zs@0,0! */ ++ { propv_obio_zs, 19, 0 }, /* 18 "/obio/zs@0,0" */ + { propv_obio_fd, 20, 0 }, /* 19 "/obio/SUNW,fdtwo" */ + { propv_obio_pw, 21, 0 }, /* 20 "/obio/power" */ + { propv_obio_cf, 0, 0 }, /* 21 "/obio/slavioconfig@0,800000" */ -+#if 0 -+ { propv_obio_su, 14, 0 }, /* 13 "/obio/su" */ -+ { propv_cpu, 18, 0 }, /* 17 "/STP1012PGA" */ -+ { propv_cpu, 19, 0 }, /* 18 "/STP1012PGA" */ -+ -+ { propv_cpu, 20, 0 }, /* 19 "/STP1012PGA" */ -+ { propv_cpu, 21, 0 }, /* 20 "/STP1012PGA" */ -+ { propv_cpu, 22, 0 }, /* 21 "/STP1012PGA" */ -+ { propv_cpu, 23, 0 }, /* 22 "/STP1012PGA" */ -+ { propv_cpu, 24, 0 }, /* 23 "/STP1012PGA" */ -+ { propv_cpu, 25, 0 }, /* 24 "/STP1012PGA" */ -+ { propv_cpu, 26, 0 }, /* 25 "/STP1012PGA" */ -+ { propv_cpu, 27, 0 }, /* 26 "/STP1012PGA" */ -+ { propv_cpu, 28, 0 }, /* 27 "/STP1012PGA" */ -+ { propv_cpu, 29, 0 }, /* 28 "/STP1012PGA" */ -+ { propv_cpu, 30, 0 }, /* 29 "/STP1012PGA" */ -+#endif ++ { propv_options, 0, 0 }, /* 22 "/options" */ +}; + +static struct linux_mlist_v0 totphys[MAX_BANKS]; @@ -1379,6 +1378,8 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + obp_stdin = PROMDEV_KBD; + obp_stdout = PROMDEV_SCREEN; + } ++ prop_zs_addr = map_io(0x71000000, 8); ++ prop_zs1_addr = map_io(0x71100000, 8); + return &romvec0; +} + @@ -1427,6 +1428,14 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c +{ + const struct property *prop; + ++ if (!name) { ++ // NULL name means get first property ++#ifdef DEBUG_OBP ++ printk("obp_getprop(%d, %x (NULL)) = %s\n", node, name, ++ nodes[node].properties[0].name); ++#endif ++ return (int)nodes[node].properties[0].name; ++ } + prop = find_property(node,name); + if (prop) { + memcpy(value,prop->value,prop->length); @@ -1451,8 +1460,18 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + +static const char *obp_nextprop(int node,char *name) +{ -+ const struct property *prop = find_property(node,name); -+ if (prop) { ++ const struct property *prop; ++ ++ if (!name || *name == '\0') { ++ // NULL name means get first property ++#ifdef DEBUG_OBP ++ printk("obp_nextprop(%d, NULL) = %s\n", node, ++ nodes[node].properties[0].name); ++#endif ++ return nodes[node].properties[0].name; ++ } ++ prop = find_property(node,name); ++ if (prop && prop[1].name) { +#ifdef DEBUG_OBP + printk("obp_nextprop(%d, %s) = %s\n", node, name, prop[1].name); +#endif @@ -1461,7 +1480,7 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c +#ifdef DEBUG_OBP + printk("obp_nextprop(%d, %s): not found\n", node, name); +#endif -+ return NULL; ++ return (const char *)-1; +} + +static int obp_nbgetchar(void) { @@ -1510,9 +1529,9 @@ diff -ruN proll_18.orig/qemu/openprom.c proll-patch7/qemu/openprom.c + //buf[8] = 'L'; + return num_blks; +} -diff -ruN proll_18.orig/qemu/system_qemu.c proll-patch7/qemu/system_qemu.c +diff -ruN proll_18.orig/qemu/system_qemu.c proll-patch8/qemu/system_qemu.c --- proll_18.orig/qemu/system_qemu.c 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/qemu/system_qemu.c 2005-03-02 16:10:20.000000000 +0000 ++++ proll-patch8/qemu/system_qemu.c 2005-03-02 16:10:20.000000000 +0000 @@ -0,0 +1,416 @@ +/** + ** Proll (PROM replacement) @@ -1930,9 +1949,9 @@ diff -ruN proll_18.orig/qemu/system_qemu.c proll-patch7/qemu/system_qemu.c + n = (n>>24 & 0xFF) | (n>>8 & 0xFF00) | ((n&0xFF00) << 8) | (n<<24); + st_bypass(ptr, n); +}; -diff -ruN proll_18.orig/src/arp.c proll-patch7/src/arp.c +diff -ruN proll_18.orig/src/arp.c proll-patch8/src/arp.c --- proll_18.orig/src/arp.c 2001-12-24 05:12:31.000000000 +0000 -+++ proll-patch7/src/arp.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/arp.c 2004-11-13 15:50:49.000000000 +0000 @@ -45,7 +45,7 @@ #endif static struct arp_cache arp_list[ARPNUM]; /* ARP address cache */ @@ -1967,9 +1986,9 @@ diff -ruN proll_18.orig/src/arp.c proll-patch7/src/arp.c + def_gw = IP_ANY; return(TRUE); } -diff -ruN proll_18.orig/src/arp.h proll-patch7/src/arp.h +diff -ruN proll_18.orig/src/arp.h proll-patch8/src/arp.h --- proll_18.orig/src/arp.h 1999-03-18 03:39:43.000000000 +0000 -+++ proll-patch7/src/arp.h 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/arp.h 2004-11-13 15:50:49.000000000 +0000 @@ -104,7 +104,7 @@ extern int init_arp __P((void)); @@ -1979,9 +1998,9 @@ diff -ruN proll_18.orig/src/arp.h proll-patch7/src/arp.h /* Add a new antry to the ARP cache */ extern void addcache __P((unsigned char *ha, t_ipaddr ip)); -diff -ruN proll_18.orig/src/hconsole.c proll-patch7/src/hconsole.c +diff -ruN proll_18.orig/src/hconsole.c proll-patch8/src/hconsole.c --- proll_18.orig/src/hconsole.c 2002-07-23 05:52:48.000000000 +0000 -+++ proll-patch7/src/hconsole.c 2005-03-02 17:03:09.000000000 +0000 ++++ proll-patch8/src/hconsole.c 2005-03-02 17:03:09.000000000 +0000 @@ -29,6 +29,10 @@ struct raster r_master; /* For a case of resize, whole fb */ struct raster r_0; /* malloc() erzatz */ @@ -2005,9 +2024,9 @@ diff -ruN proll_18.orig/src/hconsole.c proll-patch7/src/hconsole.c t->r_ = r; t->r0_ = q; t->f_ = &f_master; -diff -ruN proll_18.orig/src/lat7_2.bm proll-patch7/src/lat7_2.bm +diff -ruN proll_18.orig/src/lat7_2.bm proll-patch8/src/lat7_2.bm --- proll_18.orig/src/lat7_2.bm 1999-02-27 05:48:54.000000000 +0000 -+++ proll-patch7/src/lat7_2.bm 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/lat7_2.bm 2004-11-13 15:50:49.000000000 +0000 @@ -1,6 +1,6 @@ #define lat7_2_width 128 #define lat7_2_height 88 @@ -2016,9 +2035,9 @@ diff -ruN proll_18.orig/src/lat7_2.bm proll-patch7/src/lat7_2.bm 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0x12, 0x1e, 0x0c, 0x02, 0x70, 0x18, 0x22, 0x22, 0x18, 0x00, 0x00, 0x18, 0x18, 0xff, 0x18, 0x00, 0x12, 0x02, -diff -ruN proll_18.orig/src/lat7_2_swapped.bm proll-patch7/src/lat7_2_swapped.bm +diff -ruN proll_18.orig/src/lat7_2_swapped.bm proll-patch8/src/lat7_2_swapped.bm --- proll_18.orig/src/lat7_2_swapped.bm 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/src/lat7_2_swapped.bm 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/lat7_2_swapped.bm 2004-11-13 15:50:49.000000000 +0000 @@ -0,0 +1,121 @@ +#define lat7_2_width 128 +#define lat7_2_height 88 @@ -2141,9 +2160,9 @@ diff -ruN proll_18.orig/src/lat7_2_swapped.bm proll-patch7/src/lat7_2_swapped.bm + 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, 0x36, 0x6c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x42, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00}; -diff -ruN proll_18.orig/src/le.c proll-patch7/src/le.c +diff -ruN proll_18.orig/src/le.c proll-patch8/src/le.c --- proll_18.orig/src/le.c 2002-07-23 05:52:49.000000000 +0000 -+++ proll-patch7/src/le.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/le.c 2004-11-13 15:50:49.000000000 +0000 @@ -185,8 +185,6 @@ unsigned short rap; /* register address port */ }; @@ -2153,9 +2172,9 @@ diff -ruN proll_18.orig/src/le.c proll-patch7/src/le.c /* The Lance uses 24 bit addresses */ /* On the Sun4c the DVMA will provide the remaining bytes for us */ /* On the Sun4m we have to instruct the ledma to provide them */ -diff -ruN proll_18.orig/src/netinit.c proll-patch7/src/netinit.c +diff -ruN proll_18.orig/src/netinit.c proll-patch8/src/netinit.c --- proll_18.orig/src/netinit.c 2002-09-13 21:53:33.000000000 +0000 -+++ proll-patch7/src/netinit.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/netinit.c 2004-11-13 15:50:49.000000000 +0000 @@ -49,13 +49,20 @@ unsigned char myhwaddr[ETH_ALEN]; /* my own hardware addr */ t_ipaddr myipaddr; /* my own IP address */ @@ -2199,9 +2218,9 @@ diff -ruN proll_18.orig/src/netinit.c proll-patch7/src/netinit.c fatal(); } } -diff -ruN proll_18.orig/src/netpriv.h proll-patch7/src/netpriv.h +diff -ruN proll_18.orig/src/netpriv.h proll-patch8/src/netpriv.h --- proll_18.orig/src/netpriv.h 1999-04-27 05:39:37.000000000 +0000 -+++ proll-patch7/src/netpriv.h 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/netpriv.h 2004-11-13 15:50:49.000000000 +0000 @@ -130,10 +130,9 @@ * */ @@ -2223,9 +2242,9 @@ diff -ruN proll_18.orig/src/netpriv.h proll-patch7/src/netpriv.h /* Empty read buffer */ extern void empty_buf __P((void)); -diff -ruN proll_18.orig/src/openprom.h proll-patch7/src/openprom.h +diff -ruN proll_18.orig/src/openprom.h proll-patch8/src/openprom.h --- proll_18.orig/src/openprom.h 2002-07-14 02:26:30.000000000 +0000 -+++ proll-patch7/src/openprom.h 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/openprom.h 2004-11-13 15:50:49.000000000 +0000 @@ -54,20 +54,20 @@ }; @@ -2287,9 +2306,9 @@ diff -ruN proll_18.orig/src/openprom.h proll-patch7/src/openprom.h }; /* More fun PROM structures for device probing. */ -diff -ruN proll_18.orig/src/packet.c proll-patch7/src/packet.c +diff -ruN proll_18.orig/src/packet.c proll-patch8/src/packet.c --- proll_18.orig/src/packet.c 2000-02-11 04:56:45.000000000 +0000 -+++ proll-patch7/src/packet.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/packet.c 2004-11-13 15:50:49.000000000 +0000 @@ -41,7 +41,7 @@ int aligner; } wbuf; @@ -2317,9 +2336,9 @@ diff -ruN proll_18.orig/src/packet.c proll-patch7/src/packet.c { struct sk_buff *skb; unsigned char *s; -diff -ruN proll_18.orig/src/printf.c proll-patch7/src/printf.c +diff -ruN proll_18.orig/src/printf.c proll-patch8/src/printf.c --- proll_18.orig/src/printf.c 1999-03-19 07:03:59.000000000 +0000 -+++ proll-patch7/src/printf.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/printf.c 2004-11-13 15:50:49.000000000 +0000 @@ -19,7 +19,7 @@ static void printn(struct prf_fp *, unsigned long, unsigned int); static void putchar(char, struct prf_fp *); @@ -2347,9 +2366,9 @@ diff -ruN proll_18.orig/src/printf.c proll-patch7/src/printf.c putchar(c,filog); } else if (c == 'l' || c == 'O') { printn(filog, (long)va_arg(adx,long), c=='l'?10:8); -diff -ruN proll_18.orig/src/rconsole.c proll-patch7/src/rconsole.c +diff -ruN proll_18.orig/src/rconsole.c proll-patch8/src/rconsole.c --- proll_18.orig/src/rconsole.c 1999-01-16 07:16:55.000000000 +0000 -+++ proll-patch7/src/rconsole.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/rconsole.c 2004-11-13 15:50:49.000000000 +0000 @@ -28,12 +28,18 @@ * move to California. Only plain lat7 survived. * I recreated lat7-1 changes in lat7-2. --zaitcev @@ -2404,9 +2423,9 @@ diff -ruN proll_18.orig/src/rconsole.c proll-patch7/src/rconsole.c p->nchars_ = LAT7_NCHARS; p->width_ = LAT7_WIDTH; p->height_ = LAT7_HEIGHT; -diff -ruN proll_18.orig/src/rconsole.h proll-patch7/src/rconsole.h +diff -ruN proll_18.orig/src/rconsole.h proll-patch8/src/rconsole.h --- proll_18.orig/src/rconsole.h 1999-01-16 05:00:59.000000000 +0000 -+++ proll-patch7/src/rconsole.h 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/rconsole.h 2004-11-13 15:50:49.000000000 +0000 @@ -13,10 +13,10 @@ */ @@ -2420,9 +2439,9 @@ diff -ruN proll_18.orig/src/rconsole.h proll-patch7/src/rconsole.h int nchars_; /* 128 for ASCII ... 65536 for Unicode */ int width_; /* [Pixels]. Maximum size is 16. */ int height_; /* [Pixels == scan lines]. */ -diff -ruN proll_18.orig/src/romlib.h proll-patch7/src/romlib.h +diff -ruN proll_18.orig/src/romlib.h proll-patch8/src/romlib.h --- proll_18.orig/src/romlib.h 1999-04-20 04:26:45.000000000 +0000 -+++ proll-patch7/src/romlib.h 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/romlib.h 2004-11-13 15:50:49.000000000 +0000 @@ -73,12 +73,12 @@ #define memcpy(dst, src, len) bcopy(src, dst, len) #define memcmp(x1, x2, len) bcmp(x1, x2, len) @@ -2439,9 +2458,9 @@ diff -ruN proll_18.orig/src/romlib.h proll-patch7/src/romlib.h /* -diff -ruN proll_18.orig/src/sched_4m.c proll-patch7/src/sched_4m.c +diff -ruN proll_18.orig/src/sched_4m.c proll-patch8/src/sched_4m.c --- proll_18.orig/src/sched_4m.c 1999-04-27 05:48:51.000000000 +0000 -+++ proll-patch7/src/sched_4m.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/sched_4m.c 2004-11-13 15:50:49.000000000 +0000 @@ -108,7 +108,7 @@ static int set_bolt; /* Tick counter limit */ static struct handsc hndv[16]; @@ -2451,9 +2470,9 @@ diff -ruN proll_18.orig/src/sched_4m.c proll-patch7/src/sched_4m.c 0, 0, 0, 0, 0, 0, SUN4M_INT_ETHERNET, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; -diff -ruN proll_18.orig/src/swap.c proll-patch7/src/swap.c +diff -ruN proll_18.orig/src/swap.c proll-patch8/src/swap.c --- proll_18.orig/src/swap.c 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/src/swap.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/swap.c 2004-11-13 15:50:49.000000000 +0000 @@ -0,0 +1,21 @@ +// Convert the lat7 font so that no conversion is needed at runtime. +#define ORIG @@ -2476,9 +2495,9 @@ diff -ruN proll_18.orig/src/swap.c proll-patch7/src/swap.c + } + printf("\n"); +} -diff -ruN proll_18.orig/src/system.c proll-patch7/src/system.c +diff -ruN proll_18.orig/src/system.c proll-patch8/src/system.c --- proll_18.orig/src/system.c 2002-07-23 05:52:49.000000000 +0000 -+++ proll-patch7/src/system.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/system.c 2004-11-13 15:50:49.000000000 +0000 @@ -298,8 +298,8 @@ } @@ -2531,9 +2550,9 @@ diff -ruN proll_18.orig/src/system.c proll-patch7/src/system.c void fatal() { printk("fatal."); -diff -ruN proll_18.orig/src/system.h proll-patch7/src/system.h +diff -ruN proll_18.orig/src/system.h proll-patch8/src/system.h --- proll_18.orig/src/system.h 2002-09-13 21:53:32.000000000 +0000 -+++ proll-patch7/src/system.h 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/system.h 2004-11-13 15:50:49.000000000 +0000 @@ -16,7 +16,7 @@ #define IOMAPSIZE (1*1024*1024) /* 1 Meg maximum: we do not map framebuffer. */ #define NCTX_SWIFT 0x100 @@ -2543,9 +2562,9 @@ diff -ruN proll_18.orig/src/system.h proll-patch7/src/system.h #ifndef __ASSEMBLY__ struct bank { -diff -ruN proll_18.orig/src/udp.c proll-patch7/src/udp.c +diff -ruN proll_18.orig/src/udp.c proll-patch8/src/udp.c --- proll_18.orig/src/udp.c 2001-12-24 05:12:53.000000000 +0000 -+++ proll-patch7/src/udp.c 2004-11-13 15:50:49.000000000 +0000 ++++ proll-patch8/src/udp.c 2004-11-13 15:50:49.000000000 +0000 @@ -81,7 +81,7 @@ int source; int dest; @@ -2565,9 +2584,9 @@ diff -ruN proll_18.orig/src/udp.c proll-patch7/src/udp.c /* Register IP packet type and set write buffer pointer */ if ((writebuf = reg_type(htons(ETH_P_IP), ip_recv)) == NULL) return(FALSE); -diff -ruN proll_18.orig/src/vcons_zs.c proll-patch7/src/vcons_zs.c +diff -ruN proll_18.orig/src/vcons_zs.c proll-patch8/src/vcons_zs.c --- proll_18.orig/src/vcons_zs.c 1970-01-01 00:00:00.000000000 +0000 -+++ proll-patch7/src/vcons_zs.c 2005-03-02 12:07:41.000000000 +0000 ++++ proll-patch8/src/vcons_zs.c 2005-03-20 10:25:39.000000000 +0000 @@ -0,0 +1,68 @@ +/** + ** Console over 'zs' (Zilog serial port) @@ -2637,9 +2656,9 @@ diff -ruN proll_18.orig/src/vcons_zs.c proll-patch7/src/vcons_zs.c + /* violent crash in the end */ + ; +} -diff -ruN proll_18.orig/src/vconsole.c proll-patch7/src/vconsole.c +diff -ruN proll_18.orig/src/vconsole.c proll-patch8/src/vconsole.c --- proll_18.orig/src/vconsole.c 1999-11-08 03:10:28.000000000 +0000 -+++ proll-patch7/src/vconsole.c 2005-03-02 14:29:05.000000000 +0000 ++++ proll-patch8/src/vconsole.c 2005-03-02 14:29:05.000000000 +0000 @@ -13,6 +13,10 @@ struct hconsole hcons0; @@ -2804,9 +2823,9 @@ diff -ruN proll_18.orig/src/vconsole.c proll-patch7/src/vconsole.c } } } -diff -ruN proll_18.orig/src/vconsole.h proll-patch7/src/vconsole.h +diff -ruN proll_18.orig/src/vconsole.h proll-patch8/src/vconsole.h --- proll_18.orig/src/vconsole.h 1999-11-08 00:58:13.000000000 +0000 -+++ proll-patch7/src/vconsole.h 2005-03-02 12:40:12.000000000 +0000 ++++ proll-patch8/src/vconsole.h 2005-03-02 12:40:12.000000000 +0000 @@ -6,6 +6,8 @@ #ifndef VCONSOLE_H #define VCONSOLE_H -- 2.39.5