CzAN Read more...

Good evening dear Poseidon users (and newsmasters),

I've finished a new update. Not everything I intended to do  was  completed
for  this  version,  but as I'm off for doing university stuff this week, I
just thought I might release it anyway.

Download the archive from the usual place at

http://www.platon42.de/cgi-local/dynframe.pl?0000&poseidon.html

Users, who registered Poseidon (this is mainly for Mediator/Spider  users),
will  need  this  update due to a stupid mistake inside the licence code in
V1.28, removing the keyfile from the configuration after pressing Online.

But now the more important stuff: This version includes lots  of  bugfixes.
Evil and minor ones. Overall, the system should get more stable.

Trident has been updated. It now has some more niffy buttons, one  of  them
allows   to   change  global  class  settings  (which  currently  only  the
bootkeyboard class  supports).  Even  nicer  is  the  support  for  binding
configurations.  That  means  that (if the class supports it), you can save
settings for each device or even each interface. This is done with the  new
'Settings' button, currently available for mass storage devices. So finally
you can disable FAT automounting, change the name of the partition, set the
buffers and much more.

MorphOS binaries have been updated, too, and now the  ELF  version  of  the
PenCamTool is included, which is mindboggingly fast.

If you're missing some options, don't hesitate to  ask.  I'll  be  back  in
(hopefully)  one  week.  Remember to send full PsdDevLister and PsdErrorLog
when reporting bugs ;)

Changelog:

poseidon.library 1.30
  o psdFreeVec() was broken (freed 4 bytes less than allocated). I am
    really sorry about this. Pfuschwork orange.
  o Added class config reading and writing.
  o Added interface/device config reading and writing.
  o Added some more support functions to the library.
  o Internal variables/flags added for USB2.0 support (although, there is
    no working USB2.0 support right now).
  o Added NAK timeout (5 secs) on EP0 while enumerating, as there seem to
    be badly broken devices out there, doing NAKs forever, blocking out the
    stack until the device is removed again.
  o There were some global fields in the library data section which caused
    LoadModule by THOR to remove the resident tag because the checksum was
    wrong. Hopefully, this is now fixed.
  o Licence check was broken. I forgot an if-clause, which caused the
    single user keyfile being killed after the verification (i.e. click on
    online/offline/online and you were back to demo version). Sorry to
    Mediator users.

Trident 0.11
  o Added calls to open class config windows.
  o Fixed some gadgets in device window not being ghosted.
  o Added 'Settings' gadget in device window.
  o Added speed output of USB 2.0 highspeed devices (no support in the
    stack, yet).
  o Added calls to open binding config windows.
  o Added some gadgets in device info window.
  o Increased stack to 16KB as it was nearly running out of stack.

all classes
  o Lots of internal changes to be more extensible (via a DoMethod vector).
  o Changed classes to use the new FindEndpoint and FindInterface support
    functions. Saves a few bytes, makes classes more robust.
  o Bailing out code introduced with release V1.27 was broken and would
    always have crashed the machine on failing allocation. Fixed.

massstorage.class
  o Bugfix: With a device with multiple LUNs, Permit() was called more
    often than Forbid(). Could have caused all kinds of havoc. Fixed.
  o Data overflow is now being ignored in the data phase. This fixes
    some broken devices.
  o Added device config GUI. I hope you enjoy it. If there's something
    missing, please let me know. Remember that automounting of RDB
    partitions still doesn't work, even if there's a switch already.
  o On response timeout errors and multiple LUNs, access to unit could
    be locked, hanging the other LUN tasks. Stupid bug, which is now
    fixed.
  o CB/CBI recovery handling didn't work in some cases.
  o Added CBI_RESET (maybe this helps?).

bootkeyboard.class 1.9
  o Added class config GUI. The configuration settings include turning
    on/off of ResetHandlers, setting the time until the machine reboots
    (in case of resethandlers installed) and an alternate caps lock mode.
  o Added ISA keymap option, aswell as an option to disable the extra
    key translation functions (like page up/down).
  o Extra key translation did not send events for up-qualifiers, therefore
    shift (or amiga or control) were still pressed after using keys like
    page up/down. Fixed.

highway.device
subway.device
  o Fixed a possibly wrong PPC gate function.


Regards, Chris Hodges, http://www.platon42.de