1. 21 Mar, 2020 1 commit
    • Jeffrey Lee's avatar
      Add scroll mouse support · 66b2aac7
      Jeffrey Lee authored
      * Listen out for PointerV 9, which (RISC OS 5) mouse drivers use to
      indicate scroll wheel updates + extra button status
      * Changes in the state of the extra buttons are treated the same as
      changes to normal mouse buttons: signalled via Event_Mouse, and stored
      in the mouse buffer (for reading via OS_Mouse).
      * Changes in the scroll wheel(s) are signalled via Event_Expansion,4. If
      the event vector call is unclaimed, the kernel's wheel position
      accumulators will be updated
      * Wheel position accumulators can be read via OS_Pointer 2
      * Wheel position accumulators implement "wrap to zero" logic on overflow
      
      This matches RISCOS Ltd's implementation
      (http://www.riscos.com/support/developers/riscos6/input/pointerdevices.html),
      except that:
      
      * The kernel currently doesn't call PointerV 4, so PointerV 9 is the
      only way drivers can report wheel + extra button status
      * Extra mouse buttons don't generate KeyV transitions
      * Our implementation is in the kernel, not an OSPointer module
      
      Version 6.37. Tagged as 'Kernel-6_37'
      66b2aac7
  2. 30 Jun, 2016 1 commit
    • Jeffrey Lee's avatar
      Delete STB code · 9a571a08
      Jeffrey Lee authored
      Detail:
        This change gets rid of the following switches from the source (picking appropriate code paths for a desktop build):
        * STB
        * RO371Timings
        * NormalSpeedROMS
        * AutoSpeedROMS
        * RISCPCBurstMode
        * InterlacedPointer
        * ParallelFlashUpgrade (and s/FlashROM file)
        * Embedded_UI
        Some of the deleted code might be worth revisiting in future:
        * OS_ReadSysInfo 4 support for storing the MAC in alternate CMOS locations (including 2nd copy for error checking) or fetching via Service_MachineAddress
        * Mouse handling changes, possibly aimed at hiding the mouse pointer if a mouse isn't connected
        * More strict CMOS validation in s/NewReset
      Admin:
        Identical binary to previous revision for IOMD & Raspberry Pi builds
      
      
      Version 5.50. Tagged as 'Kernel-5_50'
      9a571a08
  3. 05 Dec, 2012 1 commit
    • Jeffrey Lee's avatar
      Add support for new extended internal key codes, low level key codes, and key handler format · bcb499b5
      Jeffrey Lee authored
      Detail:
        s/Middle - Added OS_ReadSysInfo 13 to allow the kernel to validate a key handler before the owner attempts to install it
        Resources/UK/Messages - Text for new "Bad key handler" error
        s/GetAll, s/PMF/Def - Get rid of now obsolete s/PMF/Def file. It only contained definitions for pre-HAL hardware, and for the key handler layout (now in Hdr:Keyboard)
        hdr/KeyWS - Increased size of KeysDown array so it can hold 768 keys instead of 160. Trim a couple of obsolete variables, and increase CurrKey/OldKey from 1 byte to 4 bytes.
        s/PMF/key, s/PMF/osbyte - Main bulk of the changes for the new key handling. All the important interfaces are now able to deal with extended (i.e. > 8 bit) internal key numbers, and the kernel is able to cope with key handlers which use 16 bit internal/low level key numbers instead of 8 bit.
      Admin:
        Tested on Pandora & BB-xM
        Requires HdrSrc-2_20
      
      
      Version 5.35, 4.79.2.178. Tagged as 'Kernel-5_35-4_79_2_178'
      bcb499b5
  4. 06 May, 2004 1 commit
    • Kevin Bracey's avatar
      * HAL can choose to limit amount of screen memory to allocate · 0f6941a8
      Kevin Bracey authored
        [Not fully implemented - for now leaves at least 16MB free if only
        one RAM area; was 1MB].
      * Added HAL_USBControllerInfo, HAL_MonitorLeadID and HAL_Video_Render.
      * Added HAL->OS call OS_IICOpV.
      * OS_MMUControl now allows independent control of I and C bits.
      * Added facility to deactivate keyboard debounce (magic word "NoKd" in
        R2 in KeyV 0).
      * Fixed problem with RAM amounts not a multiple of 4MB.
      * Supremacy bit (in VDU 19) now sets all 8 bits of supremacy.
      * Added PaletteV 14 (reads gamma tables).
      * Added Supremacy transfer functions (like gamma correction, but for
        supremacy). Allows easy global supremacy effects in a mode-independent
        fashion. Controlled with PaletteV 15,16.
      * Added modes 50-53 (320x240, 1,2,4,8bpp). Intended for small LCD.
      * Added 13.5kHz versions of TV modes (selected by Hdr:Machine).
      * Upped desktop version to 5.06.
      
      Version 5.35, 4.79.2.66. Tagged as 'Kernel-5_35-4_79_2_66'
      0f6941a8
  5. 11 Jun, 2001 1 commit
  6. 15 Sep, 2000 1 commit
    • Kevin Bracey's avatar
      * Converted to building with ObjAsm (but still a single object file using ORG). · 49836a59
      Kevin Bracey authored
      * Added ARM_IMB and ARM_IMBRange SWIs as recommended by ARMv5.
      * Some early prototype HAL bits popped in - a lot of source restructuring still
        to come.
      * New debug target creates an AIF image with debug information, and translates
        this into an ASCII object file for the 16702B logic analyser.
      
      Version 5.35, 4.79.2.1. Tagged as 'Kernel-5_35-4_79_2_1'
      49836a59
  7. 21 Jan, 1997 1 commit
  8. 21 Nov, 1996 1 commit
  9. 05 Nov, 1996 1 commit