1. 12 May, 2000 1 commit
    • Ben Avison's avatar
      Improvement to the new callback functionality from version 5.27. · 88c888e9
      Ben Avison authored
        In the previous version, Portable_Idle was called each time that the callback
        chain was examined. This is only desirable in cases where we're polling the
        keyboard, waiting before scrolling the text window; in the normal case, it's
        an unnecessary slow-down. Now fixed to only call Portable_Idle if we're
        waiting for a key up/down/timeout.
        Not tested.
      Version 5.28. Tagged as 'Kernel-5_28'
  2. 10 May, 2000 2 commits
    • Ben Avison's avatar
      Callbacks can now go off when the text window scrolls (newline or line wrap). · 1896d276
      Ben Avison authored
        In particular, they can go off when Scroll Lock etc have frozen the text
        The callback chain is examined at least once per line scroll. Additionally,
        it is examined repeatedly while Scroll Lock or Ctrl-Shift are acting, while
        idling between lines if Ctrl is held down, and while waiting for the Shift
        key to be pressed at the bottom of a screen when in page mode.
        The opportunity is also taken to call Portable_Idle after each time that the
        callback chain has been examined.
        Not tested.
      Version 5.27. Tagged as 'Kernel-5_27'
    • David Cotton's avatar
      Added new debug flag DebugROMPostInit · 7b449b13
      David Cotton authored
      	It is often the case that modules fail on receipt of a PostInit
      cervice call. The Kernel already has an option to display debugging on module
      initialisation (DebugROMInit), but this does not help if a module crashes
      during the PostInit stage.
      	To aid debugging of the PostInit stage of module initialisation, a
      new flag (DebugROMPostInit) has been added to the vanilla service call
      handler. This flag displays the name of each module that the PostInit is
      being dispatched to, and then displays whether control has passed back to the
      kernel. Hence crashes of a module during PostInit can be detected.
      	Note that this debug option only works in the vanilla service call
      handler. If your build uses the chocolate handler and you wish to debug
      PostInit of modules, then set it temporarilly to use vanilla handlers.
      	Tested in Lazarus builds both with and without the option switched.
      Version 5.26. Not tagged
  3. 09 May, 2000 1 commit
    • Stewart Brodie's avatar
      Fixed "SWI &6D656D not known" system collapse. · b41af248
      Stewart Brodie authored
        Fixed multiple internationalisation of error message.
        Somebody had decided to write a comment that R0-R2 needed to be
          unstacked before exiting the dynamic area remove routine, but
          then forgot to do so.  The crash is the same each time, as the
          address of MessageTrans error buffer it was trying to return
          is the value mistakenly loaded in R15.
        Kernel doesn't try to translate error messages multiple times.
          Not only does this give rise to errors about not being able
          to translate error messages, but causes MessageTrans to have to
          search repeatedly for non-existant tokens, slowing things down
        Tested in Ursula build.
        Not a complete fix - FileCore now leaks map & buffer dynamic areas
          whenever the RAM disc size is altered, but that needs to be fixed
          in FileCore (it needs to accept that OS_ChangeDynamicArea is not
          re-entrant and delete the DAs on a callback)
      Version 5.26. Tagged as 'Kernel-5_26'
  4. 08 May, 2000 1 commit
    • Simon Forrest's avatar
      * Kernel failed to assemble on Lazarus builds. Single instruction change should cure this. · 8fd9657d
      Simon Forrest authored
        * Lazarus builds of the Kernel failed with the following error:
            Immediate value out of range at line 458 in file "s.NewReset"
                    ADR    R2, IRQ_Test_CTRL_or_R_Pressed
          This is due to the ADR going out of range.  Changed to use ADDR
          macro instead to rectify this.
        * Untested at time of check-in; to be verified in next Lazarus development
      Version 5.25. Tagged as 'Kernel-5_25'
  5. 20 Apr, 2000 1 commit
  6. 17 Apr, 2000 1 commit
  7. 13 Apr, 2000 2 commits
  8. 12 Apr, 2000 1 commit
    • Stewart Brodie's avatar
      Bug fixes only. · 53aadeeb
      Stewart Brodie authored
        "Podule" number now displayed again in *ROMModule output - flag
           preservation issue caused it to disappear in 5.23.
        *Eval output no longer misses its trailing space, neither do "Podule" or
          "Extn ROM" in *ROMModules output.
        Heap manager now works again in non-SVC modes.
        Exception dump now contains faked up 26-bit PC+PSR lookalike.
  9. 04 Apr, 2000 1 commit
    • Kevin Bracey's avatar
      32-bit Kernel. · b4016e9c
      Kevin Bracey authored
        The Kernel will now compile to produce a pure 32-bit system if No26bitCode is
        set to TRUE.
        If No26bitCode is FALSE, then the Kernel will be a standard 26-bit Kernel,
        although some internal changes have taken place to minimise compile
        switches between the two cases. See Docs.32bit for more technical info.
        The hardest part was the flood-fill...
      Other changes:
        Pointer shape changes now take place on the next VSync, rather than actually
        WAITING for the VSync. Turning the Hourglass on shouldn't slow your machine
        down by 5% now :)
        Lots of really crusty pre-IOMD code removed.
        Tested in 32 and 26-bit forms in a limited desktop build. Basically, this
        will need to see a lot of use to iron out difficulties. I'd like anyone who
        has a non-frozen project to at least attempt using this Kernel.
      Version 5.23. Tagged as 'Kernel-5_23'
  10. 23 Mar, 2000 1 commit
    • Ben Avison's avatar
      Monotonic time was returned with a 1 cs error in certain circumstances. · 24044755
      Ben Avison authored
        Most of the centisecond timers were incremented very early in the Timer0
        interrupt routine, but MetroGnome was incremented after we had called
        TickerV. Routines on TickerV are allowed to enable interrupts, so any
        interrupt routines that use OS_ReadMonotonicTime and IRQRQA are unable to
        accurately determine if the monotonic time is one tick out-of-date or not.
        MetroGnome is now incremented with the other timers.
        Tested with the timer code in STB-400 MPEGDriver.
      Version 5.22. Tagged as 'Kernel-5_22'
  11. 10 Mar, 2000 1 commit
  12. 08 Mar, 2000 2 commits
    • Stewart Brodie's avatar
      Fixed output of *ROMModules so everything lines up properly. · aca95374
      Stewart Brodie authored
        The code for *ROMModules uses OS_PrettyPrint, which seems unconcerned
          by such trivial things as leading spaces, which accounts for the
          misaligned output.  The code now starts by using ASCII 31 (hard
          space for OS_PrettyPrint's purposes) as the leading indent character
          to avoid confusion.
        Tested on desktop build in both command-line and TaskWindows.
      Version 5.20. Tagged as 'Kernel-5_20'
    • Neil Bingham's avatar
      Change to Version file · 5ff82b71
      Neil Bingham authored
        When Machine=Phoebe the Kernel failed to build due to use of OSVersionID.
        Commented out this line.  Other machine settings unaffected.
        Tested on Ursula build: Products/Ursula/modules (tag Ursula010a).
      Version 5.19. Tagged as 'Kernel-5_19'
  13. 27 Feb, 2000 1 commit
    • Stewart Brodie's avatar
      Update from Pineapple · e975789f
      Stewart Brodie authored
        Three new OS SWIs for RISC OS Ltd.
        E-mail received 27 Feb 2000
        No conflicts with Pace definitions.
      Version 5.18. Tagged as 'Kernel-5_18'
  14. 22 Feb, 2000 1 commit
    • Paul Skirrow's avatar
      Removed redundant MACFROMNVRAM introduced in Kernel 5.09. · 3e7e3a11
      Paul Skirrow authored
        MACFROMNVRAM was intended to force the Kernel to fetch the MAC
        address from NVRAM for Customer F 5. In practice it is not needed
        as its main purpose was to avoid getting the MAC address from
        the RawMachineID but this will not happen in Customer F 5 as
        RawMachineID will not be set.
        Not tested.
        MACFROMNVRAM will be removed from HdrSrc.
      Version 5.17. Tagged as 'Kernel-5_17'
  15. 17 Feb, 2000 1 commit
  16. 02 Feb, 2000 1 commit
    • Stewart Brodie's avatar
      Added OS_ReadSysInfo 6, 7 and 8 from Ursula branch. · b85d7d81
      Stewart Brodie authored
        Ensured that M_Phoebe builds set UtilityModule version to 4.00
        The softload utility relies on the existence of the extra reason codes
          to OS_ReadSysInfo introduced in Ursula.  The main kernel now supports
          these too (they are simply interfaces to read kernel capabilities and
          configuration - eg. addresses and sizes of UND and SVC mode stacks)
        Avoid OS_ReadSysInfo 9 - ROL have used it for reading the ROM personality
          information (and it's not in our kernel)
        Added some of the new macros into Copro15ops required by the ABT dump
          area code (returned by OS_ReadSysInfo 7) and added the code into ARM600
          to store abort information there.
        Required by softload utility for Ursula builds.
        Tested on Risc PC.
      Version 5.15. Tagged as 'Kernel-5_15'
  17. 27 Jan, 2000 1 commit
    • Stewart Brodie's avatar
      Conditional assembly fixed. · d9cfd887
      Stewart Brodie authored
        If E2ROMSupport is {FALSE} then the kernel fails to build due to the
          use a symbols that are only defined if E2ROMSupport is {TRUE}.  This
          is now fixed by stopping the symbols being used where they should not
          be (NVRAM and RTC related symbols).
      Version 5.14. Tagged as 'Kernel-5_14'
  18. 26 Jan, 2000 4 commits
  19. 20 Jan, 2000 1 commit
    • Paul Skirrow's avatar
      Kernel reads Ethernet MAC address from NVRAM (and nowhere else) if · 6760ce30
      Paul Skirrow authored
        MACFROMNVRAM is set. This is set in HdrSrc for Customer F machines.
        If MACFROMNVRAM is TRUE then OS_ReadSysInfo 4 will read the Ethernet MAC
        Address from bytes 0-13 of the NVRAM area, instead of trying to read it
        from anywhere else. (14 bytes are ysed to store 2 copies and 2
        This is intended for use with a 24LC128 device (which has no OTP area
        and no clock).
        Note that these are physical addresses within the device. Logical
        addresses &F0-&FF map to physical addresses &00-&0F.
        A SetMac utility is provided in Customer F 5 !Boot.Utils to enable the MAC
        address to be programmed for prototypes and development machines.
        Since it is dangerous to rely on the NVRAM to hold our MAC address when
        it is not protected in any way, we store two copies of it, each with
        their own checksum. At present only the first copy is used, but the
        plan is to check both copies and both checksums.
        This version of the Kernel needs Programmer/HdrSrc v0.68 or later.
        If MACFROMNVRAM is enabled, ensure that the MACADDRESS tag in the
        NVRAM file is set to point at &F0 and that MACADDRESSCHECKSUM
        is set to point at &F6. Both should have options L and P to ensure
        they are protected from NVRAM resets and other writes.
      Version 5.09. Tagged as 'Kernel-5_09'
  20. 01 Dec, 1999 1 commit
  21. 09 Nov, 1999 1 commit
  22. 02 Nov, 1999 1 commit
    • Kevin Bracey's avatar
      OS_ReadSysInfo 2 now reports whether the IIC bus is fast (in bit 24 of R2),... · c9f6a232
      Kevin Bracey authored
      OS_ReadSysInfo 2 now reports whether the IIC bus is fast (in bit 24 of R2), and whether I/O clocks should be stopped when idling the processor (bit 25).
      OS_Byte 19 is a bit more careful in its use of Portable_Idle - an edge case
      where the vsync interrupt was already pending now returns immediately.
      Version 5.07. Tagged as 'Kernel-5_07'
  23. 01 Nov, 1999 1 commit
  24. 29 Oct, 1999 1 commit
  25. 26 Oct, 1999 1 commit
  26. 25 Oct, 1999 3 commits
  27. 19 Oct, 1999 2 commits
  28. 18 Oct, 1999 1 commit
  29. 14 Oct, 1999 2 commits
  30. 13 Oct, 1999 1 commit