summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--release/sysinstall/pccard.c164
-rw-r--r--release/texts/PCCARD.TXT13
-rw-r--r--share/syscons/keymaps/be.iso.acc.kbd138
3 files changed, 315 insertions, 0 deletions
diff --git a/release/sysinstall/pccard.c b/release/sysinstall/pccard.c
new file mode 100644
index 000000000000..48cc1ac87e1d
--- /dev/null
+++ b/release/sysinstall/pccard.c
@@ -0,0 +1,164 @@
+/*
+ * PC-card support for sysinstall
+ *
+ * $Id: pccard.c,v 1.4 1999/07/04 15:54:14 hosokawa Exp $
+ *
+ * Copyright (c) 1997-1999
+ * Tatsumi Hosokawa <hosokawa@jp.FreeBSD.org>. All rights reserved.
+ *
+ * This software may be used, modified, copied, and distributed, in
+ * both source and binary form provided that the above copyright and
+ * these terms are retained. Under no circumstances is the author
+ * responsible for the proper functioning of this software, nor does
+ * the author assume any responsibility for damages incurred with its
+ * use.
+ */
+
+#include "sysinstall.h"
+#include "pccard_conf.h"
+#include <sys/fcntl.h>
+#include <sys/time.h>
+#include <pccard/cardinfo.h>
+
+#ifdef PCCARD
+
+int pccard_mode = 0;
+
+DMenu MenuPCICMem = {
+ DMENU_NORMAL_TYPE | DMENU_SELECTION_RETURNS,
+ "Please select free address area used by PC-card controller",
+ "PC-card controller uses memory area to get card information.\n"
+ "Please specify an address that is not used by other devices.\n"
+ "If you're uncertain of detailed specification of your hardware,\n"
+ "leave it untouched (default == 0xd0000).",
+ "Press F1 for more HELP",
+ "pccard",
+ { { "Default", "I/O address 0xd0000 - 0xd3fff",
+ NULL, dmenuSetVariable, NULL, "_pcicmem=0"},
+ { "D4", "I/O address 0xd4000 - 0xd7fff",
+ NULL, dmenuSetVariable, NULL, "_pcicmem=1"},
+ { "D8", "I/O address 0xd8000 - 0xdbfff",
+ NULL, dmenuSetVariable, NULL, "_pcicmem=2"},
+ { "DC", "I/O address 0xdc000 - 0xdffff",
+ NULL, dmenuSetVariable, NULL, "_pcicmem=3"},
+ { NULL } },
+};
+
+DMenu MenuCardIRQ = {
+ DMENU_NORMAL_TYPE | DMENU_SELECTION_RETURNS,
+ "Please select IRQs that can be used by PC-cards",
+ "Please specify an IRQs that CANNOT be used by PC-card.\n"
+ "For example, if you have a sound card that can't be probed by\n"
+ "this installation floppy and it uses IRQ 10, you have to \n"
+ "choose \"Option 1\" or \"Option 2\" at this menu.\n",
+ "Press F1 for more HELP",
+ "pccard",
+ { { "Default", "IRQ 10, 11",
+ NULL, dmenuSetVariable, NULL, "_cardirq=0"},
+ { "Option 1", "IRQ 5, 11 (ex. soundcard on IRQ 10)",
+ NULL, dmenuSetVariable, NULL, "_cardirq=1"},
+ { "Option 2", "IRQ 11 (ex. something on IRQ 5 and 10)",
+ NULL, dmenuSetVariable, NULL, "_cardirq=2"},
+ { NULL } },
+};
+
+void
+pccardInitialize(void)
+{
+ int fd;
+ int t;
+ int pcic_mem = 0xd0000;
+ char card_device[16];
+ char *card_irq = "";
+ char *spcic_mem;
+ char *scard_irq;
+ char pccardd_flags[128];
+ char pccardd_cmd[256];
+
+ pccard_mode = 1;
+
+ if (!RunningAsInit && !Fake) {
+ /* It's not my job... */
+ return;
+ }
+
+ dmenuOpenSimple(&MenuPCICMem, FALSE);
+ spcic_mem = variable_get("_pcicmem");
+ dmenuOpenSimple(&MenuCardIRQ, FALSE);
+ scard_irq = variable_get("_cardirq");
+
+ sscanf(spcic_mem, "%d", &t);
+ switch (t) {
+ case 0:
+ pcic_mem = 0xd0000;
+ variable_set2("pccard_mem", "DEFAULT", 1);
+ break;
+ case 1:
+ pcic_mem = 0xd4000;
+ variable_set2("pccard_mem", "0xd4000", 1);
+ break;
+ case 2:
+ pcic_mem = 0xd8000;
+ variable_set2("pccard_mem", "0xd8000", 1);
+ break;
+ case 3:
+ pcic_mem = 0xdc000;
+ variable_set2("pccard_mem", "0xdc000", 1);
+ break;
+ }
+
+ sscanf(scard_irq, "%d", &t);
+
+ switch (t) {
+ case 0:
+ card_irq = "-i 10 -i 11";
+ break;
+ case 1:
+ card_irq = "-i 5 -i 11";
+ break;
+ case 2:
+ card_irq = "-i 11";
+ break;
+ }
+
+ sprintf(card_device, CARD_DEVICE, 0);
+
+ dialog_clear();
+ msgConfirm("Now starts initializing PC-card controller and cards.\n"
+ "If you've executed this installer from PC-card floppy\n"
+ "drive, this is the last chance to replace it with\n"
+ "installation media (PC-card Ethernet, CDROM, etc.).\n"
+ "Please insert installation media and press [Enter].\n"
+ "If you've not plugged the PC-card installation media\n"
+ "yet, please plug it now and press [Enter].\n"
+ "Otherwise, just press [Enter] to proceed.");
+
+ dialog_clear();
+ msgNotify("Initializing PC-card controller....");
+
+ if (!Fake) {
+ if ((fd = open(card_device, O_RDWR)) < 1) {
+ msgNotify("Can't open PC-card controller %s.\n",
+ card_device);
+ return;
+ }
+
+ if (ioctl(fd, PIOCRWMEM, &pcic_mem) < 0){
+ msgNotify("ioctl %s failed.\n", card_device);
+ return;
+ }
+ }
+
+ strcpy(pccardd_cmd, "/stand/pccardd ");
+ strcat(pccardd_cmd, card_irq);
+ strcat(pccardd_cmd, " -z");
+
+ strcpy(pccardd_flags, card_irq);
+ variable_set2("pccardd_flags", card_irq, 1);
+
+ vsystem(pccardd_cmd);
+}
+
+#endif /* PCCARD */
+
+
diff --git a/release/texts/PCCARD.TXT b/release/texts/PCCARD.TXT
new file mode 100644
index 000000000000..f521a5c68d91
--- /dev/null
+++ b/release/texts/PCCARD.TXT
@@ -0,0 +1,13 @@
+PC-card Installation Floppy (experimental)
+
+Installation floppy in this directory can enable PC-card devices
+(currently only support Ethernet).
+
+Currently, it was tested with following laptops and cards.
+
+--------------------------------------------------------------------
+Toshiba Libretto 1000 (PCIC Memory: default, IRQ: 10, 11)
+ IBM CreditCard Ethernet II
+--------------------------------------------------------------------
+
+(please send your result to <hosokawa@freebsd.org>)
diff --git a/share/syscons/keymaps/be.iso.acc.kbd b/share/syscons/keymaps/be.iso.acc.kbd
new file mode 100644
index 000000000000..e4000edfbe94
--- /dev/null
+++ b/share/syscons/keymaps/be.iso.acc.kbd
@@ -0,0 +1,138 @@
+# alt
+# scan cntrl alt alt cntrl lock
+# code base shift cntrl shift alt shift cntrl shift state
+# ------------------------------------------------------------------
+ 000 nop nop nop nop nop nop nop nop O
+ 001 esc esc esc esc esc esc debug esc O
+ 002 '&' '1' nop nop '|' '|' nop nop O
+ 003 233 '2' nul nul '@' '@' nul nul O
+ 004 '"' '3' nop nop '#' '#' nop nop O
+ 005 ''' '4' nop nop ''' '4' nop nop O
+ 006 '(' '5' nop nop '(' '5' nop nop O
+ 007 167 '6' rs rs '^' '^' rs rs O
+ 008 232 '7' nop nop 232 '7' nop nop O
+ 009 '!' '8' nop nop '!' '8' nop nop O
+ 010 231 '9' nop nop '{' '{' nop nop O
+ 011 224 '0' nop nop '}' '}' nop nop O
+ 012 ')' 176 nop nop ')' 176 nop nop O
+ 013 '-' '_' us us '-' '_' us us O
+ 014 bs bs del del bs bs del del O
+ 015 ht btab nop nop ht btab nop nop O
+ 016 'a' 'A' soh soh 'a' 'A' soh soh C
+ 017 'z' 'Z' sub sub 'z' 'Z' sub sub C
+ 018 'e' 'E' enq enq 'e' 'E' enq enq C
+ 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C
+ 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C
+ 021 'y' 'Y' em em 'y' 'Y' em em C
+ 022 'u' 'U' nak nak 'u' 'U' nak nak C
+ 023 'i' 'I' ht ht 'i' 'I' ht ht C
+ 024 'o' 'O' si si 'o' 'O' si si C
+ 025 'p' 'P' dle dle 'p' 'P' dle dle C
+ 026 dcir duml esc esc '[' '[' esc esc O
+ 027 '$' '*' gs gs ']' ']' gs gs O
+ 028 cr cr nl nl cr cr nl nl O
+ 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O
+ 030 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C
+ 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C
+ 032 'd' 'D' eot eot 'd' 'D' eot eot C
+ 033 'f' 'F' ack ack 'f' 'F' ack ack C
+ 034 'g' 'G' bel bel 'g' 'G' bel bel C
+ 035 'h' 'H' bs bs 'h' 'H' bs bs C
+ 036 'j' 'J' nl nl 'j' 'J' nl nl C
+ 037 'k' 'K' vt vt 'k' 'K' vt vt C
+ 038 'l' 'L' ff ff 'l' 'L' ff ff C
+ 039 'm' 'M' cr cr 'm' 'M' cr cr O
+ 040 249 '%' nop nop dacu dacu nop nop O
+ 041 178 179 nop nop 178 179 nop nop O
+ 042 lshift lshift lshift lshift lshift lshift lshift lshift O
+ 043 181 163 nop nop dgra dgra nop nop O
+ 044 'w' 'W' etb etb 'w' 'W' etb etb C
+ 045 'x' 'X' can can 'x' 'X' can can C
+ 046 'c' 'C' etx etx 'c' 'C' etx etx C
+ 047 'v' 'V' syn syn 'v' 'V' syn syn C
+ 048 'b' 'B' stx stx 'b' 'B' stx stx C
+ 049 'n' 'N' so so 'n' 'N' so so C
+ 050 ',' '?' nop nop ',' '?' nop nop C
+ 051 ';' '.' nop nop ';' '.' nop nop O
+ 052 ':' '/' nop nop ':' '/' nop nop O
+ 053 '=' '+' nop nop dtil dtil nop nop O
+ 054 rshift rshift rshift rshift rshift rshift rshift rshift O
+ 055 '*' '*' '*' '*' '*' '*' '*' '*' O
+ 056 lalt lalt lalt lalt lalt lalt lalt lalt O
+ 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O
+ 058 clock clock clock clock clock clock clock clock O
+ 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O
+ 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O
+ 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O
+ 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O
+ 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O
+ 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O
+ 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O
+ 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O
+ 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O
+ 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O
+ 069 nlock nlock nlock nlock nlock nlock nlock nlock O
+ 070 slock slock slock slock slock slock slock slock O
+ 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N
+ 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N
+ 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N
+ 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N
+ 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N
+ 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N
+ 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N
+ 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N
+ 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N
+ 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N
+ 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N
+ 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N
+ 083 del '.' '.' '.' '.' '.' boot boot N
+ 084 nop nop nop nop nop nop nop nop O
+ 085 nop nop nop nop nop nop nop nop O
+ 086 '<' '>' fs fs '\' '\' fs fs O
+ 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
+ 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O
+ 089 cr cr nl nl cr cr nl nl O
+ 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O
+ 091 '/' '/' '/' '/' '/' '/' '/' '/' N
+ 092 nscr nscr debug debug nop nop nop nop O
+ 093 ralt ralt ralt ralt ralt ralt ralt ralt O
+ 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
+ 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
+ 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
+ 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
+ 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
+ 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
+ 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
+ 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
+ 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
+ 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O
+ 104 slock saver slock saver susp nop susp nop O
+ 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O
+ 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O
+ 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
+ 108 nop nop nop nop nop nop nop nop O
+
+ dgra '`' ( 'a' 224 ) ( 'A' 192 ) ( 'e' 232 ) ( 'E' 200 )
+ ( 'i' 236 ) ( 'I' 204 ) ( 'o' 242 ) ( 'O' 210 )
+ ( 'u' 249 ) ( 'U' 217 )
+ dacu 180 ( 'a' 225 ) ( 'A' 193 ) ( 'e' 233 ) ( 'E' 201 )
+ ( 'i' 237 ) ( 'I' 205 ) ( 'o' 243 ) ( 'O' 211 )
+ ( 'u' 250 ) ( 'U' 218 ) ( 'y' 253 ) ( 'Y' 221 )
+ dcir '^' ( 'a' 226 ) ( 'A' 194 ) ( 'e' 234 ) ( 'E' 202 )
+ ( 'i' 238 ) ( 'I' 206 ) ( 'o' 244 ) ( 'O' 212 )
+ ( 'u' 251 ) ( 'U' 219 )
+ dtil '~' ( 'a' 227 ) ( 'A' 195 ) ( 'n' 241 ) ( 'N' 209 )
+ ( 'o' 245 ) ( 'O' 213 )
+ dmac 000
+ dbre 000
+ ddot 000
+ duml 168 ( 'a' 228 ) ( 'A' 196 ) ( 'e' 235 ) ( 'E' 203 )
+ ( 'i' 239 ) ( 'I' 207 ) ( 'o' 246 ) ( 'O' 214 )
+ ( 'u' 252 ) ( 'U' 220 ) ( 'y' 255 )
+ dsla 000
+ drin 176 ( 'a' 229 ) ( 'A' 197 )
+ dced 184 ( 'c' 231 ) ( 'C' 199 )
+ dapo 000
+ ddac 000
+ dogo 000
+ dcar 000