[comp.sys.amiga] Noistracker 2.0 and 2000 keyboards

chem194@canterbury.ac.nz (John Davis, chem dept, UoC NZ) (08/15/90)

Totally ignoring the heated flame war raging over the status of
Noisetracker 2.0, anyone who's tried it on a 2000 will probably
have found that the keyboard doesn't seem to work ( in actual
fact, all keyboard input winds up in the shell you started it from ).

Well, being bored I decide to find out _why_ this was ( works
fine on all the 500s I've tried, yet on NONE of the 2000s I've
got access too ... that includes rev6 and rev4 machines )

Anyway dived in and started tracing it to see what it was doing
wrong .. found a routine that handled the keyboard ( reading the 
cia's KBDAT reg etc ), back-traced that to a routine that installed 
the keyboard routine onto the interrupt vector for the CIA ... traced 
_that_ back from to where it got called from ( by this stage I was
getting dizzy indeed :-) ... and found that there's a boolean variable 
that dictates whether NT should install it's own hardware level keyboard 
driver, or somehow hook into execbase (haven't totally disassembled that 
yet ... but plan to as I _really_ want to know why it's normal method
only works on 500s). 

Anyway, the kludge to execbase was the default, and the hardware
level handler seemed to be an option .. so traced back from
that routine to where the boolean var got set ( Hisoft's MonAm is really
useful!! ) and found it's set DEPENDING ON THE COMMANDLINE ARGS!!!

Seems if you invoke it via 'st-n2' it does whatever it does that 
doesn't work on 2000s ( beat that for a confusing statement :-) and 
if you instead invoke it with  a '-H' option ( i.e. 'st-n2 -h' ) it 
installs it's own keyboard driver and then works FINE on 2000s. 

Problem solved ( docs .. who needs docs when you've got a disassembler :-). 

Personally howevewr, I think I'll switch back to MED, as it handles
MIDI an _awful_ lot better ( which is my prime consideration ).
                                                 
cheers ... John

-----------------------------------------------------------
| o  John Davis - CHEM194@canterbury.ac.nz               o |
| o  (Depart)mental Programmer,Chemistry Department      o |
| o  University of Canterbury, Christchurch, New Zealand o | 
| o                                                      o |
| o  co-sysop AmigaINFO BBS,1200/2400 baud CCITT,        o |
| o           24 hours a day, ph NZ +3-3371-531          o |