- 19 Feb, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: OS_IICOp (and in turn, RISCOS_IICOpV) now treat the top byte of R1 as containing the IIC bus number, allowing multiple buses to be used. hdr/KernelWS - Changed workspace a bit so that the kernel can support up to IICBus_Count buses (currently 3), each with its own IICBus_* block. s/HAL - Update Reset_IRQ_Handler to cope with interrupts from all IIC buses instead of just the first. Fix/update RISCOS_IICOpV description. s/NewIRQs - Update InitialiseIRQ1Vtable to set up interrupt handlers for all IRQ-supporting IIC buses s/NewReset - Get rid of the IICAbort call that was just before IICInit. IICInit now calls IICAbort itself. s/PMF/IIC - Bulk of the changes. Code now uses the IICBus_ structures instead of the IICStatus and IICType variables. Re-entrancy code has been updated to take into account the possiblity of multiple buses; when OS_IICOp calls are nested, the IIC transfers will be added to bus-specific queues instead of all going in the same queue. However only one queue will be processed at a time. s/ChangeDyn - Workspace shuffling means a couple of MOV's needed to be swapped with LDR's when getting immediate constants Admin: Tested with OMAP & IOMD ROM builds. Both high & low-level bus types seem to work OK, along with re-entrancy, both on the same bus and on a different bus. Version 5.35, 4.79.2.98.2.33. Tagged as 'Kernel-5_35-4_79_2_98_2_33'
-
- 04 Oct, 2010 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/Options - ARM6support and GetKernelMEMC values are now derived from the value of MEMM_Type s/ARMops, s/HAL - Code to detect and handle ARMv7 CPUs is now only enabled when using VMSAv6 MMU model. Saves us from having to deal with lack of myIMB, myDSB, etc. implementations on pre-ARMv6. s/HAL - Removed some debug code s/NewReset - Fix bug spotted by Tom Walker where R12 wasn't being restored by LookForHALRTC if a non-HAL RTC had already been found s/AMBControl/memmap - correct the assert clause that was checking that &FFE are the correct L2PT protection bits for non-VMSAv6 machines Admin: Tested this kernel on a rev C2 beagleboard & Iyonix softload. Also compiled it into an IOMD ROM, but didn't try running it. Version 5.35, 4.79.2.98.2.32. Tagged as 'Kernel-5_35-4_79_2_98_2_32'
-
- 23 Jun, 2010 1 commit
-
-
Jeffrey Lee authored
Update Cortex kernel to use correct instruction/memory barriers and to perform branch target predictor maintenance. Plus tweak default CMOS settings. Detail: hdr/Copro15ops - Added myISB, myDSB, myDMB macros to provide barrier functionality on ARMv6+ s/ARMops, s/HAL, s/VMSAv6, s/AMBControl/memmap - Correct barrier operations are now performed on ARMv6+ following CP15 writes. Branch predictors are now also maintained properly. s/NewReset - Change default CMOS settings so number of CDFS drives is 0 in Cortex builds. Fixes rogue CDFS icon on iconbar. Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.27. Tagged as 'Kernel-5_35-4_79_2_98_2_27'
-
- 22 Apr, 2010 1 commit
-
-
Jeffrey Lee authored
Detail: s/NewReset - boot filing system now defaults to SCSIFS for the CortexA8 machine type. BeagleBoards, etc. should now be able to run their boot sequence if one is placed on a USB mass storage device. Admin: Tested on rev C2 beagleboard. Version 5.35, 4.79.2.98.2.26. Tagged as 'Kernel-5_35-4_79_2_98_2_26'
-
- 05 Dec, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: LookForHALRTC wasn't initialising R12 to point to the OS Byte workspace before calling CheckYear, and instead relying on the previous value. This resulted in the RTC initialisation breaking once HAL_InitDevices started doing things to corrupt R12. Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.18. Tagged as 'Kernel-5_35-4_79_2_98_2_18'
-
- 23 Jul, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: HAL kernels (on the Cortex branch at least) now support HALDevice-based RTCs. If the kernels own RTC code is disabled or fails to detect an RTC, then after HAL_InitDevices is called the HALDevice list will be scanned for any HAL-resident RTC devices. Additionally, the RTCSupport flag (in Hdr:Machine.Machine), which was previously TRUE for all HAL kernels, can now be set to FALSE in HAL kernels to disable the kernels own IIC RTC code. This allows the unwanted legacy RTC code to be disabled for machines which are known to use HAL RTCs instead. hdr/RTCDevice - new header describing data structures used for HAL RTC device hdr/HALDevice - added RTCDevice device type, IIC serial bus type hdr/KernelWS - upgraded RTCFitted from a 1 byte field to 4 byte. It now stores either a null value (for no RTC), a value <2048 for an IIC RTC address, or a value >= 2048 for a RTCDevice ptr Makefile - added header export of hdr/RTCDevice s/GetAll - include hdr/RTCDevice s/NewReset - initialise HAL RTC after HAL_InitDevices if required s/PMF/i2cutils, s/PMF/osinit, s/PMF/osword - modifications to allow use of HAL RTC (and disallow use of builtin IIC RTC) Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.11. Tagged as 'Kernel-5_35-4_79_2_98_2_11'
-
- 06 Mar, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: s/ARM600 - fix to SyncCodeAreasRange to correctly read cache line length for WB_CR7_Lx caches s/ARMops - Cortex cache handling fixes. Enable L2 cache for Cortex. s/ChangeDyn - VMSAv6 support in AllocateBackingLevel2 s/HAL - Improve RISCOS_InitARM to set/clear correct CP15 flags for ARMv6/v7. VMSAv6 support in code to generate initial page tables. s/NewReset - Extra DebugTX calls during OS startup. Disable pre-HAL Processor_Type for HAL builds. s/VMSAv6 - Main VMSAv6 MMU code - stripped down version of s/ARM600 with support for basic VMSAv6 features. hdr/Options - Use VMSAv6 MMU code, not ARM600. Disable ARM6support since current VMSAv6 code will conflict with it. Admin: Tested basic OS functionality under qemu-omap3 and revision B6 beagleboard. Version 5.35, 4.79.2.98.2.3. Tagged as 'Kernel-5_35-4_79_2_98_2_3'
-
- 25 Jun, 2004 1 commit
-
-
Kevin Bracey authored
* Added use of CDVPoduleIRQs (from Hdr:Machine) * Fixed checksum corruption in OS_NVMemory block writes ending just below the checksum byte. * Fixed R4 corruption by OS_Byte 162 with certain HALs. Version 5.35, 4.79.2.71. Tagged as 'Kernel-5_35-4_79_2_71'
-
- 06 May, 2004 1 commit
-
-
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'
-
- 31 Mar, 2003 1 commit
-
-
Kevin Bracey authored
Added "fast" flash tool for Customer L, allowing ROMs to be sent serially at 115200 baud not 9600 baud. Fix to VDU despatch for ARMv4 and later. Fixes to power on delete keyboard and keyboard timeout Implemented MemoryReadPhys and MemoryAmounts with the HAL. Version 5.35, 4.79.2.59. Tagged as 'Kernel-5_35-4_79_2_59'
-
- 02 Mar, 2003 1 commit
-
-
Kevin Bracey authored
OSDelink/RelinkApp now work on the list in opposite orders so that the order of vector claims doesn't get toggled. Fix for *FX5 not working due to a TST having been swapped for CMP. Checkprotectionlink option added to HAL version so CMOS lock is implemented. Updated HAL docs. Version 5.35, 4.79.2.58. Tagged as 'Kernel-5_35-4_79_2_58'
-
- 21 Feb, 2003 1 commit
-
-
Ben Avison authored
Detail: * Merged in the change to RISC OS 4.02 kernel that moved the GSTrans workspace out of scratch space. * Fixed a few bugs in callback postponement, and interrupt holes in callback dispatch. See Docs.CallbackChange for full info. * Fixed SystemSizeCMOS to SysHeapCMOS - wouldn't build as was. * Added an export of a C version of Hdr:HALDevice, based on the Hdr2H translation but with an additional struct definition. Required by SoundControl 1.00. * Added some additional location and ID allocations to Hdr:HALDevice. Required by today's HAL and SoundControl. Admin: Partially tested. Version 5.35, 4.79.2.56. Tagged as 'Kernel-5_35-4_79_2_56'
-
- 27 Jan, 2003 1 commit
-
-
Kevin Bracey authored
*Configure ANYTHINGsize was broken due to not setting R0 to ReadUnsigned IIC ack message uninternationalised OS_Memory was saying we only had 4M of RAM VDU4 scrolling when output was switched to sprite was causing corruption on use of CTRL-J and CTRL-K Default SystemSize CMOS set to 32k Version 5.35, 4.79.2.55. Tagged as 'Kernel-5_35-4_79_2_55'
-
- 30 Nov, 2002 1 commit
-
-
Ben Avison authored
Detail: Lots of changes since last version, at least the following: * Updated OS timestamp, removed alpha status * Negative INKEY OS version changed to &AA * GraphicsV is now alocated vector number &2A * ROM moved up to &FC000000 * Max application slot increased to 512 Mbytes (for now) * Max size of RMA increased to 256 Mbytes * RMA is now first-created dynamic area (so it gets lowest address after top of application slot) * OS_Memory 10 reimplemeted * New OS_ReadSysInfo 6 values 18-22 added * OS_ReadSysInfo 8 gains flag bit to indicate soft power-off * Misc internal top-bit-set-address fixes * *ChangeDynamicArea can take sizes in megabytes or gigabytes * Magic word "&off" in R0 passed to OS_Reset powers down if possible * Added acceleration: block copy; CLS; text window scroll up; rectangle fill * Disabled LED flashing in page mode (liable to crash) * Masked sprite plot and VDU 5 text avoids reading the screen if poss...
-
- 16 Oct, 2002 1 commit
-
-
Ben Avison authored
Detail: * Implemented OS_Hardware 2, 3 and 4 as described in Docs.HAL.NewAPI. * Added new OS->HAL and HAL->OS routines to register HAL devices with the OS during hard resets. * Updated Docs.HAL.NewAPI to correct inconsistencies, fill in missing definitions, and allow for interrupt sharing. * Now uses OS_LeaveOS to trigger callbacks after ROM module init. Admin: Untested. Requires new HAL. Version 5.35, 4.79.2.49. Tagged as 'Kernel-5_35-4_79_2_49'
-
- 07 Oct, 2002 1 commit
-
-
Kevin Bracey authored
Version 5.35, 4.79.2.48. Tagged as 'Kernel-5_35-4_79_2_48'
-
- 18 Jun, 2001 1 commit
-
-
Mike Stephens authored
Ursula. Quite a hairy code merge really, so let's hope it is worth it to someone. What you get (back after 2 or 3 years): - much more efficient for largish numbers of DAs (relevance to current build = approx 0) - fancy reason codes to support fast update of Switcher bar display (relevance = 0) - support for clamped maximum area sizes, to avoid address space exhaustion with big memory (relevance = 0) - better implementation of shrinkable DAs, performance wise (if lots of DAs, relevance = approx 0) - support for 'Sparse' DAs. Holey dynamic areas, Batman! (relevance, go on someone use the darned things) Moderately development tested on HAL/32bit ARM9 desktop. Note the Switcher should be compiled to use the new reason codes 6&7, for fabled desktop builds. Also, during this work, so I could see the wood for the trees, redid some source code clean up, removing pre-Medusa stuff (like I did about 3 years ago on Ursula, sigh). That's why loads...
-
- 15 Jun, 2001 1 commit
-
-
Mike Stephens authored
Look for LongCommandLine flag, command line size currently set at 1k. For HAL/32bit builds, the kernel buffer space is at high (top bit set) address, which may break some code using signed comparisons. So *beware* that there may be some latent bugs in old kernel code using these buffers, not yet found. One such bug, in s.Arthur2 found and fixed. Tested moderately on ARM9 desktop build. Lovely to reimplement things I did two and half years ago. Version 5.35, 4.79.2.37. Tagged as 'Kernel-5_35-4_79_2_37'
-
- 11 Jun, 2001 1 commit
-
-
Kevin Bracey authored
* Allows HAL-driven software resets. * Sound buffers corrected to be uncacheable. Version 5.35, 4.79.2.33. Tagged as 'Kernel-5_35-4_79_2_33'
-
- 17 May, 2001 1 commit
-
-
Kevin Bracey authored
* Kernel puts sensible default FIQ handler in through the HAL. * Fix to temporary page uncaching code. Version 5.35, 4.79.2.30. Tagged as 'Kernel-5_35-4_79_2_30'
-
- 16 Mar, 2001 1 commit
-
-
Kevin Bracey authored
Version 5.35, 4.79.2.20. Tagged as 'Kernel-5_35-4_79_2_20'
-
- 08 Mar, 2001 1 commit
-
-
Kevin Bracey authored
An attempt to do NVMemory by using part of the Flash that the OS is sitting in for Customer L. Programming algorithm works, but I'm not confident that the Kernel does the right thing yet. Version 5.35, 4.79.2.19. Tagged as 'Kernel-5_35-4_79_2_19'
-
- 07 Mar, 2001 1 commit
-
-
Kevin Bracey authored
-
- 09 Jan, 2001 1 commit
-
-
Mike Stephens authored
First attempt at ARM9 support, and general clean-up of old ARM-specific code, now using vectored ARMops. Not tested. Version 5.35, 4.79.2.14. Tagged as 'Kernel-5_35-4_79_2_14'
-
- 10 Nov, 2000 1 commit
-
-
Kevin Bracey authored
Check-in of the few last-minute changes for the Customer L demo. Nothing exciting, apart from an extended touchscreen API. Version 5.35, 4.79.2.13. Tagged as 'Kernel-5_35-4_79_2_13'
-
- 20 Oct, 2000 2 commits
-
-
Mike Stephens authored
more use of ARMops in page manipulation, change register usage of ARmops tested by kernel boot to star prompt only Version 5.35, 4.79.2.11. Tagged as 'Kernel-5_35-4_79_2_11'
-
Kevin Bracey authored
-
- 16 Oct, 2000 1 commit
-
-
Kevin Bracey authored
More stuff. Up to the desktop now; cache on, working keyboard. Some source restructuring to start to make splitting it up into several object files more feasible.
-
- 10 Oct, 2000 1 commit
-
-
Mike Stephens authored
-
- 09 Oct, 2000 1 commit
-
-
Kevin Bracey authored
-
- 06 Oct, 2000 1 commit
-
-
Kevin Bracey authored
It says "Abort on data transfer".
-
- 05 Oct, 2000 2 commits
-
-
Dan Ellis authored
Detail: Added the HAL NVRAM entries. Modified i2cutils to use the HAL entries for NVRAM and behave sensibly if the HAL reports that there is no NVRAM, in which case there must be a forced reset_cmos call so that the cache gets set up sensibly. Admin: Tested under the RPC emulator and appears to be working correctly, although some calls to IIC are still being made in the no nvram case. Version 5.35, 4.79.2.8. Tagged as 'Kernel-5_35-4_79_2_8'
-
Kevin Bracey authored
Version 5.35, 4.79.2.5. Tagged as 'Kernel-5_35-4_79_2_5'
-
- 02 Oct, 2000 1 commit
-
-
Kevin Bracey authored
Version 5.35, 4.79.2.2. Tagged as 'Kernel-5_35-4_79_2_2'
-
- 15 Sep, 2000 1 commit
-
-
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'
-
- 15 Aug, 2000 1 commit
-
-
Stewart Brodie authored
Added common error cache. Detail: Fixed module header validation code which was broken in 5.22. This shouldn't have caused much of a problem as it was only a bizarre check (SWI chunk looked valid but SWI handler was 0) that would have failed - but be reported as a valid set of SWI entries. Added common error message cache. Several common errors (Buffer overflow; Number not recognised; Bad vector release; and a couple of others) are now cached the first time they are translated into a block of memory in the system heap. Admin: Tested in Ursula build - cacheing only active in Ursula build - change HdrSrc if you want it in your products too. Requires HdrSrc 0.94 Version 5.31. Tagged as 'Kernel-5_31'
-
- 08 May, 2000 1 commit
-
-
Simon Forrest authored
Detail: * 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. Admin: * Untested at time of check-in; to be verified in next Lazarus development build. Version 5.25. Tagged as 'Kernel-5_25'
-
- 13 Apr, 2000 1 commit
-
-
Kevin Bracey authored
RPCEm update. * Register allocation in default ErrorV handler fixed - problems occured when callbacks were triggered on way out. * OS_Byte 19 didn't manipulate interrupt disable flag correctly in 26-bit builds. * Stray bit of debugging left in sprite code many years ago removed. Version 5.23. Not tagged
-
- 04 Apr, 2000 1 commit
-
-
Kevin Bracey authored
Details: 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. Admin: 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'
-
- 29 Oct, 1999 1 commit
-
-
Kevin Bracey authored
Power down A to D convertors on reset. Version 5.05. Tagged as 'Kernel-5_05'
-