Short: ANAIIS USB Stack Release 0.96 Author: Gilles Pelletier Uploader: gilles pelletier voila fr (Gilles Pelletier) Type: driver/other Version: 0.96 (10-Feb-08) Replaces: driver/other/anaiis.lha Requires: Highway or Subway from E3B Architecture: m68k-amigaos Introduction ~~~~~~~~~~~~ ANAIIS, acronym for Another Native Amiga IO Interface Stack, is a quick and dirty software solution that brings the possibilities of the Universal Serial Bus (USB) to the old vintage Amiga, with 68000 at 7.14Mhz, and the ZorroII card Highway or clockport Subway from E3B. At minimum, you need: - Amiga 68000 at 7.14Mhz - a Highway or a Subway card - some RAM (70 Ko for a mouse and a keyboard) - Kickstart 1.3 (Kickstart 1.1 and 1.2 should work, except gui) Note on kickstarts or cpu: No restriction! Should operate from 1.1 to 4.0. ANAIIS, Another acronym with hidden parts: Native because it is all written in C language. Amiga because this computer worth this kind of program. Input/Output because it works for mice, keyboards and printers. Interface because it translates usb transactions into Intuition events. Stack because this kind of program is called like that. ANAIIS controls: - 900 alias hub - 311 alias keyboard - 312 alias mouse - 711,712 alias printer A little interface is given to control the stack. You can control it via CLI commands: usbstart, usbreset, usbstop. You can send files to printer with usbprint command. For games, demos or some tools, you must keep original mice and keyboard. ANAIIS translates usb transactions into system events, so programs that use hardware directly don't work. ANAIIS is not yet resident and doesn't survive at boot time. Tested with success with Brilliance, Deluxe Paint, Aegis Sonix, Ced (I wrote this text with it :) ) most of well written Workbench tools. Installation ~~~~~~~~~~~~ Step -1: Hardware required: please read and follow instructions on relative documentation for hardware installation. Highway : Zorro II slot A2000, A3000, A4000 Subway : clockport A1200 By default the clockport address is 0x00d80001. clockport support on 68000 socket A1000,A500,CDTV,A500+,A600,A2000 clockport on card A2000,A3000,A4000 See documentation, you need to know the base address of the card and the clockport offset. Step 0: remove all previous modules. Step 1: copy usbstart in sys:system copy usbstop in sys:system copy usbreset in sys:system copy ieee1284.device in devs: copy usbprint where you want ( c: ... ) copy anaiis in sys:prefs Notice that you can copy files where you want. Step 2: To launch the stack, click usbstart, and to see what happens click ANAIIS icon and check "Hardware" panel. If Highway or Subway is present, it's written if not, "Dummy 1" is shown. If you are sure you have plug a Subway, and the port address is not 0x00d80001 see the following: Example for a clockport on another card, brute version: card base address: 0x00e90000 offset : 0x00004000 clockport address: 0x00e94000 In the ANAIIS GUI, "System" panel, select "Subway" item with the (pseudo :) ) cycle gadget and set 0x00e94000 in Param1. Then return to "Hardware" panel, click on "Close Stack" gadget and close the window. The settings are kept in the file anaiis.prefs. You can also copy it in S: according to old style for user preferences. Launch usbstart. BE CAREFULL : if there is no clockport at this address, the guru will come... Example for a clockport on another card, expansion compliant way: You need to know, the manufacturer ID and product ID of the card. In the ANAIIS GUI, "System" panel, select "Host" item, and set the following Param1 manufacturer 0x00000861 Param2 product 0x000000c8 Param3 offset 0x00004000 BE CAREFULL : if there is no clockport at this address, the guru will come... Step 3: If the stack works, you can modify the s:startup-sequence by adding the following command: run >NIL: sys:system/usbstart >NIL: Future ~~~~~~ - Joystick or joypad support (need HID parser, heavy stuff) - Better configuration interface. - USB massstorage support... - Fix some ugly bugs. - Localization support. - Reduce code size, suppress debug data. Known Bugs ~~~~~~~~~~ - Keyboard leds doesn't work. - Printing on HPPSC don't work at all ( :( *#!? ) - Graphic User Interface seems to be bugged (yes it's true!) Steps ~~~~~ V0.96 -10Feb2008 Fix Highway ugly bug, due to a wrong and looooong code generation. Silly compiler and lazy coder... -21Jan2008 OS4.0 Mousewheel? what!? Yes for Subway and OS4.O under 68000 emulation. Core modification, standard message structure for future use. V0.95 -13Jan2008 Add Host+manufacturer+product+offset for clockport base address. V0.94 -23Dec2007 Fix Subway detection that sometimes fails. Many thanks for the brave beta testers! -18Dec2007 some little GUI Improvement. V0.93 -15Dec2007 Subway now works with ANAIIS! -12Dec2007 Merge code for Highway and Subway. -02Dec2007 Printing doesn't work... V0.92 -18Nov2007 Most hub will work now. I have implemented 2.0 mode, but old 1.1 style doesn't work. Now it fixed. -23May2007 Additional code to simply manage mousewheel. ANAIIS will send 0x7a for up, 0x7b for down, 0x7c for left and 0x7d for right, as keyboard events. Strange for a mouse! -Strange multiselection: Qualifiers key was wrong on repeat state, but good on key up and key down. I use inputdev tool (Robert A. Peck 1985) to check that. Now you can move cursor with keyboard keys: lalt+window key = lalt+lamiga = left click. ralt+context menu = ralt+ramiga = right click. window key+cursor up = lamiga+up = mouse move up. window key+cursor down = lamiga+down = mouse move down. window key+cursor left = lamiga+left = mouse move left. window key+cursor right = lamiga+right = mouse move right. V0.91 -13May2007 Murphy's law symptom: all enumerated devices appears as ????!!!! in the gui and nothing seems to work. This was a trace and debug problem... So sorry (I'am a bug maker in true life). Try the following to V0.90. Launch usbstart and Anaiis, panel "Debug" click once on "no trace" gadget (Trace 1 appears) - if you have clicked more, no problem, it must be different than 0 -, panel "Hardware" click on "reset". Now it's working! WB1.3: suppress ugly console windows. V0.90 -09May2007 First working release. V0.10 -10Jun2006 Mouse!! Contact address ~~~~~~~~~~~~~~~ Any mail, comments, suggestions, documentations are welcome! Please send a mail with the title "ANAIIS" at the following mail address gilles dot pelletier at voila point fr Enjoy USB on old classic Amiga. And remember: Only Amiga makes it possible!