Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

L68K: Patch for 2.1.120

1 view
Skip to first unread message

Kars de Jong

unread,
Oct 2, 1998, 3:00:00 AM10/2/98
to
(Forwarded from the linux-m68k mailing list)

Hi all,

Here's a patch for the Amiga interrupt handler system. It makes sure the CIA
interrupt register is cleared before enabling it, so you don't immediately get
an interrupt that was posted when interrupts were disabled. I need this for the
PLIP driver. If this is not the right way to do it, I can call cia_set_irq()
myself, but that would require exporting the symbol, together with ciaa_base.

There's also a patch for the standard Amiga usa1 keyboard as compiled into the
kernel. It maps the Del key to Remove (like on the PC). The ctrl-alt-del
combination is now mapped to the normal Del key as well (instead of just the
one in the numeric keypad). It also makes ctrl-alt-pgup send Scroll_Backward
and ctrl-alt-pgdn send Scroll_Forward. On the PC it is done with Shift-pgup
and Shift-pgdn, but I'm not sure how to do that here since the PC has seperate
keys for that. It doesn't work on the standard Amiga console though, not even
with a virtual vertical screen. Geert?

Frank, the keyboard and console HOWTO at
http://sunsite.unc.edu/LDP/HOWTO/Keyboard-and-Console-HOWTO.html should help
explain why the backspace key sends Delete and the Delete key (should) send
Remove ;)

This should make the work for the Debian and RedHat people a little easier. It
generally makes the keyboard act very much like the PC version. This is the
keymap I used to generate the code below:

# Default kernel keymap. This uses 7 modifier combinations.
keymaps 0-2,4-5,8,12
# Change the above line into
# keymaps 0-2,4-6,8,12
# in case you want the entries
# altgr control keycode 60 = Boot
# altgr control keycode 70 = Boot
# below.
#
# In fact AltGr is used very little, and one more keymap can
# be saved by mapping AltGr to Alt (and adapting a few entries):
# keycode 101 = Alt
#
keycode 0 = grave asciitilde
control keycode 0 = nul
alt keycode 0 = Meta_grave
keycode 1 = one exclam
alt keycode 1 = Meta_one
keycode 2 = two at at
control keycode 2 = nul
shift control keycode 2 = nul
alt keycode 2 = Meta_two
keycode 3 = three numbersign
control keycode 3 = Escape
alt keycode 3 = Meta_three
keycode 4 = four dollar dollar
control keycode 4 = Control_backslash
alt keycode 4 = Meta_four
keycode 5 = five percent
control keycode 5 = Control_bracketright
alt keycode 5 = Meta_five
keycode 6 = six asciicircum
control keycode 6 = Control_asciicircum
alt keycode 6 = Meta_six
keycode 7 = seven ampersand braceleft
control keycode 7 = Control_underscore
alt keycode 7 = Meta_seven
keycode 8 = eight asterisk bracketleft
control keycode 8 = Delete
alt keycode 8 = Meta_eight
keycode 9 = nine parenleft bracketright
alt keycode 9 = Meta_nine
keycode 10 = zero parenright braceright
alt keycode 10 = Meta_zero
keycode 11 = minus underscore backslash
control keycode 11 = Control_underscore
shift control keycode 11 = Control_underscore
alt keycode 11 = Meta_minus
keycode 12 = equal plus
alt keycode 12 = Meta_equal
keycode 13 = backslash bar
control keycode 13 = Control_backslash
alt keycode 13 = Meta_backslash
keycode 14 =
keycode 15 = KP_0
alt keycode 15 = Ascii_0
altgr keycode 15 = Hex_0
keycode 16 = q
keycode 17 = w
keycode 18 = e
altgr keycode 18 = Hex_E
keycode 19 = r
keycode 20 = t
keycode 21 = y
keycode 22 = u
keycode 23 = i
keycode 24 = o
keycode 25 = p
keycode 26 = bracketleft braceleft
control keycode 26 = Escape
alt keycode 26 = Meta_bracketleft
keycode 27 = bracketright braceright asciitilde
control keycode 27 = Control_bracketright
alt keycode 27 = Meta_bracketright
keycode 28 =
keycode 29 = KP_1
alt keycode 29 = Ascii_1
altgr keycode 29 = Hex_1
keycode 30 = KP_2
alt keycode 30 = Ascii_2
altgr keycode 30 = Hex_2
keycode 31 = KP_3
alt keycode 31 = Ascii_3
altgr keycode 31 = Hex_3
control alt keycode 31 = Scroll_Forward
keycode 32 = a
altgr keycode 32 = Hex_A
keycode 33 = s
keycode 34 = d
altgr keycode 34 = Hex_D
keycode 35 = f
altgr keycode 35 = Hex_F
keycode 36 = g
keycode 37 = h
keycode 38 = j
keycode 39 = k
keycode 40 = l
keycode 41 = semicolon colon
alt keycode 41 = Meta_semicolon
keycode 42 = apostrophe quotedbl
control keycode 42 = Control_g
alt keycode 42 = Meta_apostrophe
keycode 43 =
keycode 44 =
keycode 45 = KP_4
alt keycode 45 = Ascii_4
altgr keycode 45 = Hex_4
keycode 46 = KP_5
alt keycode 46 = Ascii_5
altgr keycode 46 = Hex_5
keycode 47 = KP_6
alt keycode 47 = Ascii_6
altgr keycode 47 = Hex_6
keycode 48 = Compose
keycode 49 = z
keycode 50 = x
keycode 51 = c
altgr keycode 51 = Hex_C
keycode 52 = v
keycode 53 = b
altgr keycode 53 = Hex_B
keycode 54 = n
keycode 55 = m
keycode 56 = comma less
alt keycode 56 = Meta_comma
keycode 57 = period greater
control keycode 57 = Compose
alt keycode 57 = Meta_period
keycode 58 = slash question
control keycode 58 = Delete
alt keycode 58 = Meta_slash
keycode 59 =
keycode 60 = KP_Period
# altgr control keycode 60 = Boot
control alt keycode 60 = Boot
keycode 61 = KP_7
alt keycode 61 = Ascii_7
altgr keycode 61 = Hex_7
keycode 62 = KP_8
alt keycode 62 = Ascii_8
altgr keycode 62 = Hex_8
keycode 63 = KP_9
alt keycode 63 = Ascii_9
altgr keycode 63 = Hex_9
control alt keycode 63 = Scroll_Backward
keycode 64 = space space
control keycode 64 = nul
alt keycode 64 = Meta_space
keycode 65 = Delete Delete
control keycode 65 = BackSpace
alt keycode 65 = Meta_Delete
keycode 66 = Tab Tab
alt keycode 66 = Meta_Tab
keycode 67 = KP_Enter
keycode 68 = Return
alt keycode 68 = Meta_Control_m
keycode 69 = Escape Escape
alt keycode 69 = Meta_Escape
keycode 70 = Remove
# altgr control keycode 70 = Boot
control alt keycode 70 = Boot
keycode 71 =
keycode 72 =
keycode 73 =
keycode 74 = KP_Subtract
keycode 75 =
keycode 76 = Up
keycode 77 = Down
keycode 78 = Right
alt keycode 78 = Incr_Console
keycode 79 = Left
alt keycode 79 = Decr_Console
keycode 80 = F1 F11 Console_11
control keycode 80 = F1
alt keycode 80 = Console_1
control alt keycode 80 = Console_1
keycode 81 = F2 F12 Console_12
control keycode 81 = F2
alt keycode 81 = Console_2
control alt keycode 81 = Console_2
keycode 82 = F3 F13 Console_13
control keycode 82 = F3
alt keycode 82 = Console_3
control alt keycode 82 = Console_3
keycode 83 = F4 F14 Console_14
control keycode 83 = F4
alt keycode 83 = Console_4
control alt keycode 83 = Console_4
keycode 84 = F5 F15 Console_15
control keycode 84 = F5
alt keycode 84 = Console_5
control alt keycode 84 = Console_5
keycode 85 = F6 F16 Console_16
control keycode 85 = F6
alt keycode 85 = Console_6
control alt keycode 85 = Console_6
keycode 86 = F7 F17 Console_17
control keycode 86 = F7
alt keycode 86 = Console_7
control alt keycode 86 = Console_7
keycode 87 = F8 F18 Console_18
control keycode 87 = F8
alt keycode 87 = Console_8
control alt keycode 87 = Console_8
keycode 88 = F9 F19 Console_19
control keycode 88 = F9
alt keycode 88 = Console_9
control alt keycode 88 = Console_9
keycode 89 = F10 F20 Console_20
control keycode 89 = F10
alt keycode 89 = Console_10
control alt keycode 89 = Console_10
keycode 90 = Num_Lock
shift keycode 90 = Bare_Num_Lock
keycode 91 = Scroll_Lock Show_Memory Show_Registers
control keycode 91 = Show_State
alt keycode 91 = Scroll_Lock
keycode 92 = KP_Divide
keycode 93 = KP_Multiply
keycode 94 = KP_Add
keycode 95 = Help Show_Memory Show_Registers
control keycode 95 = Show_State
alt keycode 95 = Show_State
keycode 96 = Shift
keycode 97 = Shift
keycode 98 = Caps_Lock
keycode 99 = Control
keycode 100 = Alt
keycode 101 = AltGr
keycode 102 =
keycode 103 =
keycode 104 =
keycode 105 =
keycode 106 =
keycode 107 =
keycode 108 =
keycode 109 =
keycode 110 =
keycode 111 =
keycode 112 =
keycode 113 =
keycode 114 =
keycode 115 =
keycode 116 =
keycode 117 =
keycode 118 =
keycode 119 =
keycode 120 =
keycode 121 =
keycode 122 =
keycode 123 =
keycode 124 =
keycode 125 =
keycode 126 =
keycode 127 =

And here's the diff:

--- linux/arch/m68k/amiga/amiints.c 1998/09/26 09:41:34 1.1
+++ linux/arch/m68k/amiga/amiints.c 1998/09/26 09:45:23
@@ -288,12 +288,14 @@
}

if (irq >= IRQ_AMIGA_CIAB) {
+ cia_set_irq(&ciab_base, (1 << (irq - IRQ_AMIGA_CIAB)));
cia_able_irq(&ciab_base, CIA_ICR_SETCLR |
(1 << (irq - IRQ_AMIGA_CIAB)));
return;
}

if (irq >= IRQ_AMIGA_CIAA) {
+ cia_set_irq(&ciaa_base, (1 << (irq - IRQ_AMIGA_CIAA)));
cia_able_irq(&ciaa_base, CIA_ICR_SETCLR |
(1 << (irq - IRQ_AMIGA_CIAA)));
return;
--- linux/drivers/char/amikeyb.c 1998/09/30 11:34:40 1.1
+++ linux/drivers/char/amikeyb.c 1998/09/30 21:44:54
@@ -34,136 +34,136 @@
#define RESET_WARNING (0xf0) /* before rotation */

static u_short amiplain_map[NR_KEYS] __initdata = {
- 0xf060, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036, 0xf037,
- 0xf038, 0xf039, 0xf030, 0xf02d, 0xf03d, 0xf05c, 0xf200, 0xf300,
- 0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
- 0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf200, 0xf301, 0xf302, 0xf303,
- 0xfb61, 0xfb73, 0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b,
- 0xfb6c, 0xf03b, 0xf027, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
- 0xf200, 0xfb7a, 0xfb78, 0xfb63, 0xfb76, 0xfb62, 0xfb6e, 0xfb6d,
- 0xf02c, 0xf02e, 0xf02f, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
- 0xf020, 0xf07f, 0xf009, 0xf30e, 0xf201, 0xf01b, 0xf07f, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf105, 0xf106, 0xf107,
- 0xf108, 0xf109, 0xf312, 0xf313, 0xf30d, 0xf30c, 0xf30a, 0xf11b,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf060, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036, 0xf037,
+ 0xf038, 0xf039, 0xf030, 0xf02d, 0xf03d, 0xf05c, 0xf200, 0xf300,
+ 0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
+ 0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf200, 0xf301, 0xf302, 0xf303,
+ 0xfb61, 0xfb73, 0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b,
+ 0xfb6c, 0xf03b, 0xf027, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
+ 0xf20e, 0xfb7a, 0xfb78, 0xfb63, 0xfb76, 0xfb62, 0xfb6e, 0xfb6d,
+ 0xf02c, 0xf02e, 0xf02f, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
+ 0xf020, 0xf07f, 0xf009, 0xf30e, 0xf201, 0xf01b, 0xf116, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
+ 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf105, 0xf106, 0xf107,
+ 0xf108, 0xf109, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf11b,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

static u_short amishift_map[NR_KEYS] __initdata = {
- 0xf07e, 0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e, 0xf026,
- 0xf02a, 0xf028, 0xf029, 0xf05f, 0xf02b, 0xf07c, 0xf200, 0xf300,
- 0xfb51, 0xfb57, 0xfb45, 0xfb52, 0xfb54, 0xfb59, 0xfb55, 0xfb49,
- 0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf200, 0xf301, 0xf302, 0xf303,
- 0xfb41, 0xfb53, 0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb4a, 0xfb4b,
- 0xfb4c, 0xf03a, 0xf022, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
- 0xf200, 0xfb5a, 0xfb58, 0xfb43, 0xfb56, 0xfb42, 0xfb4e, 0xfb4d,
- 0xf03c, 0xf03e, 0xf03f, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
- 0xf020, 0xf07f, 0xf009, 0xf30e, 0xf201, 0xf01b, 0xf07f, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e, 0xf10f, 0xf110, 0xf111,
- 0xf112, 0xf113, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf203,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf07e, 0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e, 0xf026,
+ 0xf02a, 0xf028, 0xf029, 0xf05f, 0xf02b, 0xf07c, 0xf200, 0xf300,
+ 0xfb51, 0xfb57, 0xfb45, 0xfb52, 0xfb54, 0xfb59, 0xfb55, 0xfb49,
+ 0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf200, 0xf301, 0xf302, 0xf303,
+ 0xfb41, 0xfb53, 0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb4a, 0xfb4b,
+ 0xfb4c, 0xf03a, 0xf022, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
+ 0xf20e, 0xfb5a, 0xfb58, 0xfb43, 0xfb56, 0xfb42, 0xfb4e, 0xfb4d,
+ 0xf03c, 0xf03e, 0xf03f, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
+ 0xf020, 0xf07f, 0xf009, 0xf30e, 0xf201, 0xf01b, 0xf116, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
+ 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e, 0xf10f, 0xf110, 0xf111,
+ 0xf112, 0xf113, 0xf213, 0xf203, 0xf30d, 0xf30c, 0xf30a, 0xf203,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

static u_short amialtgr_map[NR_KEYS] __initdata = {
- 0xf200, 0xf200, 0xf040, 0xf200, 0xf024, 0xf200, 0xf200, 0xf07b,
- 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf200, 0xf200, 0xf200, 0xf300,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf07e, 0xf200, 0xf301, 0xf302, 0xf303,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
- 0xf200, 0xf07f, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf50c, 0xf50d, 0xf50e, 0xf50f, 0xf510, 0xf511, 0xf512, 0xf513,
- 0xf514, 0xf515, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf204,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf040, 0xf200, 0xf024, 0xf200, 0xf200, 0xf07b,
+ 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf200, 0xf200, 0xf200, 0xf90a,
+ 0xfb71, 0xfb77, 0xf918, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
+ 0xfb6f, 0xfb70, 0xf200, 0xf07e, 0xf200, 0xf90b, 0xf90c, 0xf90d,
+ 0xf914, 0xfb73, 0xf917, 0xf919, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b,
+ 0xfb6c, 0xf200, 0xf200, 0xf200, 0xf200, 0xf90e, 0xf90f, 0xf910,
+ 0xf20e, 0xfb7a, 0xfb78, 0xf916, 0xfb76, 0xf915, 0xfb6e, 0xfb6d,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf310, 0xf911, 0xf912, 0xf913,
+ 0xf200, 0xf200, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf116, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
+ 0xf50a, 0xf50b, 0xf50c, 0xf50d, 0xf50e, 0xf50f, 0xf510, 0xf511,
+ 0xf512, 0xf513, 0xf208, 0xf202, 0xf30d, 0xf30c, 0xf30a, 0xf202,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

static u_short amictrl_map[NR_KEYS] __initdata = {
- 0xf000, 0xf200, 0xf000, 0xf01b, 0xf01c, 0xf01d, 0xf01e, 0xf01f,
- 0xf07f, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf01c, 0xf200, 0xf300,
- 0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
- 0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf200, 0xf301, 0xf302, 0xf303,
- 0xf001, 0xf013, 0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b,
- 0xf00c, 0xf200, 0xf007, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
- 0xf200, 0xf01a, 0xf018, 0xf003, 0xf016, 0xf002, 0xf00e, 0xf00d,
- 0xf200, 0xf200, 0xf07f, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
- 0xf000, 0xf07f, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf105, 0xf106, 0xf107,
- 0xf108, 0xf109, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf202,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf000, 0xf200, 0xf000, 0xf01b, 0xf01c, 0xf01d, 0xf01e, 0xf01f,
+ 0xf07f, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf01c, 0xf200, 0xf300,
+ 0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
+ 0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf200, 0xf301, 0xf302, 0xf303,
+ 0xf001, 0xf013, 0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b,
+ 0xf00c, 0xf200, 0xf007, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
+ 0xf20e, 0xf01a, 0xf018, 0xf003, 0xf016, 0xf002, 0xf00e, 0xf00d,
+ 0xf200, 0xf20e, 0xf07f, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
+ 0xf000, 0xf008, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf116, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
+ 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf105, 0xf106, 0xf107,
+ 0xf108, 0xf109, 0xf208, 0xf204, 0xf30d, 0xf30c, 0xf30a, 0xf204,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

static u_short amishift_ctrl_map[NR_KEYS] __initdata = {
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf300,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf301, 0xf302, 0xf303,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
- 0xf200, 0xf07f, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf200,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf000, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf200, 0xf200, 0xf300,
+ 0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
+ 0xf00f, 0xf010, 0xf200, 0xf200, 0xf200, 0xf301, 0xf302, 0xf303,
+ 0xf001, 0xf013, 0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b,
+ 0xf00c, 0xf200, 0xf200, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
+ 0xf20e, 0xf01a, 0xf018, 0xf003, 0xf016, 0xf002, 0xf00e, 0xf00d,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf310, 0xf307, 0xf308, 0xf309,
+ 0xf200, 0xf200, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf116, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf208, 0xf200, 0xf30d, 0xf30c, 0xf30a, 0xf200,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

static u_short amialt_map[NR_KEYS] __initdata = {
- 0xf860, 0xf831, 0xf832, 0xf833, 0xf834, 0xf835, 0xf836, 0xf837,
- 0xf838, 0xf839, 0xf830, 0xf82d, 0xf83d, 0xf85c, 0xf200, 0xf900,
- 0xf871, 0xf877, 0xf865, 0xf872, 0xf874, 0xf879, 0xf875, 0xf869,
- 0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf200, 0xf901, 0xf902, 0xf903,
- 0xf861, 0xf873, 0xf864, 0xf866, 0xf867, 0xf868, 0xf86a, 0xf86b,
- 0xf86c, 0xf83b, 0xf827, 0xf200, 0xf200, 0xf904, 0xf905, 0xf906,
- 0xf200, 0xf87a, 0xf878, 0xf863, 0xf876, 0xf862, 0xf86e, 0xf86d,
- 0xf82c, 0xf82e, 0xf82f, 0xf200, 0xf310, 0xf907, 0xf908, 0xf909,
- 0xf820, 0xf87f, 0xf809, 0xf30e, 0xf80d, 0xf81b, 0xf87f, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf500, 0xf501, 0xf502, 0xf503, 0xf504, 0xf505, 0xf506, 0xf507,
- 0xf508, 0xf509, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf204,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf860, 0xf831, 0xf832, 0xf833, 0xf834, 0xf835, 0xf836, 0xf837,
+ 0xf838, 0xf839, 0xf830, 0xf82d, 0xf83d, 0xf85c, 0xf200, 0xf900,
+ 0xf871, 0xf877, 0xf865, 0xf872, 0xf874, 0xf879, 0xf875, 0xf869,
+ 0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf200, 0xf901, 0xf902, 0xf903,
+ 0xf861, 0xf873, 0xf864, 0xf866, 0xf867, 0xf868, 0xf86a, 0xf86b,
+ 0xf86c, 0xf83b, 0xf827, 0xf200, 0xf200, 0xf904, 0xf905, 0xf906,
+ 0xf20e, 0xf87a, 0xf878, 0xf863, 0xf876, 0xf862, 0xf86e, 0xf86d,
+ 0xf82c, 0xf82e, 0xf82f, 0xf200, 0xf310, 0xf907, 0xf908, 0xf909,
+ 0xf820, 0xf87f, 0xf809, 0xf30e, 0xf80d, 0xf81b, 0xf116, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf211, 0xf210,
+ 0xf500, 0xf501, 0xf502, 0xf503, 0xf504, 0xf505, 0xf506, 0xf507,
+ 0xf508, 0xf509, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf204,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

static u_short amictrl_alt_map[NR_KEYS] __initdata = {
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf300,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf301, 0xf302, 0xf303,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf20c, 0xf307, 0xf308, 0xf309,
- 0xf200, 0xf07f, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf208, 0xf209, 0xf30d, 0xf30c, 0xf30a, 0xf200,
- 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
- 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf300,
+ 0xf811, 0xf817, 0xf805, 0xf812, 0xf814, 0xf819, 0xf815, 0xf809,
+ 0xf80f, 0xf810, 0xf200, 0xf200, 0xf200, 0xf301, 0xf302, 0xf20a,
+ 0xf801, 0xf813, 0xf804, 0xf806, 0xf807, 0xf808, 0xf80a, 0xf80b,
+ 0xf80c, 0xf200, 0xf200, 0xf200, 0xf200, 0xf304, 0xf305, 0xf306,
+ 0xf20e, 0xf81a, 0xf818, 0xf803, 0xf816, 0xf802, 0xf80e, 0xf80d,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf20c, 0xf307, 0xf308, 0xf20b,
+ 0xf200, 0xf200, 0xf200, 0xf30e, 0xf201, 0xf200, 0xf20c, 0xf200,
+ 0xf200, 0xf200, 0xf30b, 0xf200, 0xf603, 0xf600, 0xf602, 0xf601,
+ 0xf500, 0xf501, 0xf502, 0xf503, 0xf504, 0xf505, 0xf506, 0xf507,
+ 0xf508, 0xf509, 0xf208, 0xf200, 0xf30d, 0xf30c, 0xf30a, 0xf200,
+ 0xf700, 0xf700, 0xf207, 0xf702, 0xf703, 0xf701, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
+ 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
};

#define DEFAULT_KEYB_REP_DELAY (HZ/4)

--
------------------------------------------------------------------------------
Kars de Jong Signaalkamp rules the waves! Turrican@Discworld
--------======]**-----| jo...@cs.utwente.nl |-----**[======---------


Geert Uytterhoeven

unread,
Oct 2, 1998, 3:00:00 AM10/2/98
to
(Forwarded from the linux-m68k mailing list)

On Fri, 2 Oct 1998, Kars de Jong wrote:
> There's also a patch for the standard Amiga usa1 keyboard as compiled into the
> kernel. It maps the Del key to Remove (like on the PC). The ctrl-alt-del
> combination is now mapped to the normal Del key as well (instead of just the
> one in the numeric keypad). It also makes ctrl-alt-pgup send Scroll_Backward
> and ctrl-alt-pgdn send Scroll_Forward. On the PC it is done with Shift-pgup
> and Shift-pgdn, but I'm not sure how to do that here since the PC has seperate
> keys for that. It doesn't work on the standard Amiga console though, not even
> with a virtual vertical screen. Geert?

I never tested scrollback with ywrap, due to the lack of scrollback keys :-)

Does it work in 8 bpp mode? In that mode ywrap is disabled because the copper
can't update 8 bitplane pointers during the horizontal retrace, and ypan should
be enabled.

Greetings,

Geert

--
Geert Uytterhoeven Geert.Uyt...@cs.kuleuven.ac.be
Wavelets, Linux/{m68k~Amiga,PPC~CHRP} http://www.cs.kuleuven.ac.be/~geert/
Department of Computer Science -- Katholieke Universiteit Leuven -- Belgium


Joerg Dorchain

unread,
Oct 2, 1998, 3:00:00 AM10/2/98
to
(Forwarded from the linux-m68k mailing list)

>

> I never tested scrollback with ywrap, due to the lack of scrollback keys :-)

I installed a keymap that maps the scroll functions to SHIFT-(KP_9|KP_3).
Currently, the effect is none (Noscrolling, but no visible side effect
neither). This is with 2.1.120 and 4 bpp console (AGA-framebuffer).

Joerg


Kars de Jong

unread,
Oct 5, 1998, 3:00:00 AM10/5/98
to
(Forwarded from the linux-m68k mailing list)

On Fri, 02 Oct 1998, Geert Uytterhoeven wrote:

>I never tested scrollback with ywrap, due to the lack of scrollback keys :-)
>

>Does it work in 8 bpp mode? In that mode ywrap is disabled because the copper
>can't update 8 bitplane pointers during the horizontal retrace, and ypan should
>be enabled.

Well, it doesn't work in 4bpp (vga70 mode with virtual screen set to 640x1200,
so that should give enough memory for 2 screens of scrollback).
But ypan is I think off in that mode, so I'll try it with 8bpp tonight.

Kars.

0 new messages