Subject: Re: NetBSD1.3 and the Atari port
To: Andr Lange <al@ssh.de>
From: Leo Weppelman <leo@wau.mis.ah.nl>
List: port-atari
Date: 10/22/1997 17:09:08
On Wed 22 Oct 1997, Andr=02 Lange wrote:
> >Hi all,
> >
> >	As you probably all know by now, a NetBSD 1.3 release is planned on
> >December 1st. This is the good news ;-) The bad news is that I am _very_
> >scarce on time currently. We (my family and I) just moved to another hou=
se
> >that needs lot's of repairs on a short term. So, I depend on you to help
> >me out a bit...
>=20
> Hi Leo.
>=20
> I wish you and our family the best for your new domicil!

Thanks! I just wished it wasn't so much work...

>=20
> Here at holiday it is not so hard to keep awake nearly the whole=20
> night. So I managed it to fully disassemble the code of the=20
> HADES-Keyboard-Microcontroller (MAB8031).
> After getting at about 3000 Lines of assembly it is time to
> implement a kind of MF-2-Scancodemode!

Uhm, not being a keyboard expert, a stupid question arises ;-)
    What is an  MF-2-Scancodemode?

> The MAB8031 can manage up to 64k of programcode, but the original
> code has only 8k of code and data.
> The higher adressbits (A13-A15) are connected to the PSG-ports=20
> IOA0-IOA2 (former used for the Floppy), so Fredi Aschwaden planned
> to copy the IKBD-code 8 times for getting multiple language support.
> But he does not find the translation-tables! :-(

With the amount of different pc-type keyboards available, I wonder if it
is wise to hard-code translation tables into a prom.

> Here comes my idea:
> I cut of the connection of the adresslines to the PSG-port and=20
> connected it correctly to the MAB8031-CPU-Port.
> Don't panic, it is really easy! ;-)
> So I get the linear adressrange of 64k by using an 27C512-EPROM=20
> (not slower than 150ns).

Sounds like a good idea. It gives you more room for some extra stuff.

> The IKBD-code supports all Atari-IKBD-commands, but the EXECUTE-cmd
> has no function.
> When using the MEM-Load it is possible to give the IKBD a list of=20
> parameters to setup his modes in a Atari-conform way.
> Here I will implement the possibility of switching the=20
> translation-tables and scancode-mode. (Later a Numeric-Pad-Calculator=20
> or DCF-77 interface follows.)
> Another feature will be a hotkey for switching the modes.

Be _very_ careful what key you pick here because that key will be unavailab=
le
for other purposes forever!

> When using MEM-Read it is possible to ask the IKBD for special=20
> state-infos of his actual mode.
> The IKBD sends to kinds of messages to the Atari:
>   1. Atari-Scancodes: Make($0-$7f) / Break(Make+$80),
>   2. Control-Codes ($F6-$FF): Status/Mouse/Time/Joystick
> The $F6-Package has a Sub-header, which identifies the kind of
> STATUS-Report. Here I will implement different sub-headers for
> transfering the original MF-2-Scancodes (Break/Make).
> This Scancodes include the WIN95-keyboards!

This all sounds good, but I like to see at least a transparent pass-through
mode. This mode allows you to add keyboard tables you didn't think of (or
that just did not fit into the prom). For NetBSD, I think this would be the
correct mode to use.

> The Atari-Tos ignores the $F6-packages ($F6 + Subheader + 6=20
> databytes), so I have to write a driver for TOS and of course=20
> NetBSD/atari.
> Fredi Aschwaden will use this new IKBD-feature for having a chance to=20
> use one Keyboard and one mouse at the same time for his new=20
> Pentium-PC-card.
>=20
> The 64k-EPROM has enough space for about 50-60 different=20
> translation-tables. It is also possible to use a smaller EPROM.

Personally, I would keep the number of built-in tables to a bare minimum
and allow tables to be loaded on demand.

> as an external version for all other ATARIs. One side connected to=20
> the keyboard-ACIA (MC6850) and the other side connected to=20
> MF-2-keyboard/Atari-Mouse/Joystick (and later DCF-77-receiver).
>=20
> What do you and the others think of this?
> If someone has ideas for getting a perfect solution, it is the right=20
> time to drop me a mail.

When all my keys produce on the some on the screen as what is printed on
the key-caps, I will be a very happy man ;-) That is a small step toward
perfection ;-))

> After this project I have time to help you testing the NetBSD/atari=20
> 1.3-kernel.

Somewhere around Xmas? ;-)

Leo.