- 25 Jul, 2017 1 commit
-
-
Ben Avison authored
Version 2.72. Tagged as 'HdrSrc-2_72'
-
- 07 Jun, 2017 1 commit
-
-
Ben Avison authored
Version 2.71. Tagged as 'HdrSrc-2_71'
-
- 29 Dec, 2016 1 commit
-
-
Ben Avison authored
Detail: Additional error and service call definitions requested by Sprow Version 2.70. Tagged as 'HdrSrc-2_70'
-
- 02 Aug, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/MEMM/VMSAv6 - Add AP_PROM for the "privileged mode ROM" permission. Define the shareable bit for L1 page table entries. Admin: Tested on Raspberry Pi Version 2.69. Tagged as 'HdrSrc-2_69'
-
- 01 Aug, 2016 1 commit
-
-
Ben Avison authored
Detail: Additional kernel error numbers for Jeffrey Lee Version 2.68. Tagged as 'HdrSrc-2_68'
-
- 03 Jul, 2016 1 commit
-
-
Ben Avison authored
Version 2.67. Tagged as 'HdrSrc-2_67'
-
- 18 Jun, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/CPU/Generic32 - Copy-paste error led to wrong variable name in a conditional block Admin: Tested on Raspberry Pi, Iyonix Version 2.66. Tagged as 'HdrSrc-2_66'
-
- 12 Jun, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: Many of our existing PSR manipulation macros (specifically, ones used for changing mode or controlling interrupts) are based around the code sequences you'd typically use on a 26bit system. Although this has worked well in terms of producing a 32bit version of the OS, it's also left us with macros that can be sub-optimal for 32bit machines, or are inconvenient to use due to the potential of corrupting other PSR flags This change adds a new set of macros which are designed and optimised for 32bit-only targets, but can still fall back to 26/32bit neutral or 26bit-only configurations hdr/CPU/Generic32: - Add the new macros (SEI, CLI, SetModeSEI, SetModeCLI & variants). - Improve existing SetMode macro to add 26bit compatibility, and to add an extra optimisation for pre-ARMv6 (emit single MSR if IRQ state is known) - Improve SCPSR to allow the source mode to be any 32bit mode - Fix conditional 26bit/32bit neutral SCPSR - the 32bit check TEQ corrupts NZCV so we can't do conditional execution on $cond after it (and we've already branched on the opposite condition anyway) - Fix 26bit/32bit neutral SCPSR to preserve NZCV when following the MSR code path - Make CLRPSR and SETPSR just call through to SCPSR - in terms of output the first two have no advantages over SCPSR - Update WritePSRc documentation to reflect that it can now be used in any (non-USR) source mode hdr/CPU/Generic26: - Update WritePSRc documentation to match Generic32 Admin: Tested on Raspberry Pi Output of new macros manually checked for various machine types (RPi, Tungsten, All, 26) Version 2.65. Tagged as 'HdrSrc-2_65'
-
- 05 Jun, 2016 1 commit
-
-
Steve Revill authored
MODE 7 doesn't really work because the DVI framer chip can't clock as low as 13.5MHz for 320x200. Version 2.64. Tagged as 'HdrSrc-2_64'
-
- 28 May, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/Machine/26, hdr/Machine/Machine - Add new "26" machine type, which targets all 26 bit machines/OS versions (running only in 26 bit mode) hdr/CPU/Arch - Use ELIF to avoid bracket spam. Remove duplicate CortexA7 case. hdr/CPU/Generic26 - Add NOPs to PSR manipulation macros in order to make them ARM2-safe (Generic32 macros are already structured to have suitable NOPs when generating 32bit-neutral code, so it makes sense for Generic26 to take care of ARM2 as well). This removes the need for components which use these macros to insert any manual NOPs, whether for the StrongARM MSR bug or the ARM2 TEQP bug. hdr/CPU/Generic32 - Flag the StrongARM MSR NOP diagnostic message as a warning, so the line number can be included in the output, so developers can more easily investigate the issue. Admin: Tested with PlingSystem build Version 2.63. Tagged as 'HdrSrc-2_63'
-
- 09 May, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/Macros - Remove GET of Hdr:CPU.Arch that was added in HdrSrc 2.61. Closer inspection of the OS sources suggest that only a handful of files were affected by the DivRem breakage, so to avoid HdrSrc turning into a tangled mess of headers that all include each other it's been decided that it's better to stick with the status quo and require users of Hdr:Macros to include Hdr:CPU.Arch as and when necessary (99% of the time Hdr:System will have already pulled it in). Admin: Tested on Raspberry Pi Version 2.62. Tagged as 'HdrSrc-2_62'
-
- 08 May, 2016 2 commits
-
-
Jeffrey Lee authored
Detail: hdr/Macros - Several macros now depend on Hdr:CPU.Arch, and it's reasonable to assume more architecture-specific optimisations will be made in future, so make sure we GET that header if necessary Admin: Tested on Raspberry Pi Fixes issues building components that GET Hdr:Macros but not Hdr:CPU.Arch, e.g. DivRem usage in several HALs Version 2.61. Tagged as 'HdrSrc-2_61'
-
Jeffrey Lee authored
Detail: hdr/Macros - DivRem is now able to use UDIV when building for architectures that support it. A "norem" option is also available, to allow the remainder calculation to be skipped if it's not needed (since we don't get it for free when using UDIV). hdr/CPU/Generic32 - PHPSEI, WritePSRc and SetMode now use the ARMv6 CPS instruction where possible, delivering performance gains compared to the equivalent MSR. Where CPS isn't used, WritePSRc now attempts to emit a single MSR instead of the 4 instructions generated by the SCPSR macro. Admin: Tested on Cortex-A15 PSR manipulation macros trialed on a few different CPU architectures to arrive at the conclusion that CPS is as good or better than MSR Version 2.60. Tagged as 'HdrSrc-2_60'
-
- 04 Apr, 2016 1 commit
-
-
Ben Avison authored
Version 2.59. Tagged as 'HdrSrc-2_59'
-
- 29 Feb, 2016 1 commit
-
-
Ben Avison authored
* ARMv7VE (virtualisation extension) * ARMv8 * ARMv8 cryptographic extension Machine=RPi builds now targets ARMv8 as well as ARMv6 and ARMv7; Machine=CortexA7 builds now set the VE flag; and All and All32 include ARMv8. Version 2.58. Tagged as 'HdrSrc-2_58'
-
- 29 Nov, 2015 1 commit
-
-
Ben Avison authored
Detail: A couple of new error allocations for the sound subsystem Version 2.57. Tagged as 'HdrSrc-2_57'
-
- 08 Nov, 2015 3 commits
-
-
Ben Avison authored
Detail: This is the mode used for hypervisor exceptions in ARMv7VE and later. Version 2.56. Tagged as 'HdrSrc-2_56'
-
Ben Avison authored
Detail: * Decloak ATA switcher error base Retagged as 'HdrSrc-2_55' Version 2.55. Not tagged
-
Ben Avison authored
Detail: * Complete the Cortex-A7 support which was initially added for RPi 2, to allow for builds that only target Cortex-A7. Because Cortex-A15 and Cortex-A17 CPUs are indistinguishable architecturally from Cortex-A7 (all are ARMv7VE with VFPv4, Advanced SIMD v2 and hardware integer divide) any such platforms are expected to use Machine=CortexA7. Also bear in mind that if we ever support multiple cores on big.LITTLE CPUs, execution can move between these core types at runtime, making an assembly time option to distinguish between them meaningless! * Correct Machines All and All32 to include support for VFPv4 * Decloak the ATA driver SWI chunk * Add a global error allocation for use by the ATA subsystem (placed in global space because it propagates into the CD stack) Version 2.55. Tagged as 'HdrSrc-2_55'
-
- 29 Sep, 2015 1 commit
-
-
Ben Avison authored
Detail: Various allocations relating to SPIDriver and SATAFS made public Version 2.54. Tagged as 'HdrSrc-2_54'
-
- 23 Aug, 2015 1 commit
-
-
Ben Avison authored
Detail: Two extra kernel error numbers in NewErrors Updated comment in FSNumbers to state filing system prefix used by SDFS Version 2.53. Tagged as 'HdrSrc-2_53'
-
- 05 Aug, 2015 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/MEMM/VMSAv6 - Remove XScale-specific L1_X, L2_X, L2L_X flags. Add L2_S flag. Add definitions for the cache size ID register fields. Admin: Tested on ARM11, Cortex-A7, -A8, -A9, -A15 Version 2.52. Tagged as 'HdrSrc-2_52'
-
- 18 May, 2015 1 commit
-
-
Ben Avison authored
Detail: * Filetype for MJPEG files * Extra AUN error * Resolved error base clash between AbortRegions and VFPSupport * New alias for OS_Byte 221 Version 2.51. Tagged as 'HdrSrc-2_51'
-
- 02 Feb, 2015 1 commit
-
-
Ben Avison authored
Detail: The Raspberry Pi ROM now joins the IOMD ROM in supporting multiple architectures, in this case ARMv6 and ARMv7. This has been achieved by creating a new machine type specific for Raspberry Pi. The old ARM11ZF machine type remains for builds that are ARM11-only. The Raspberry Pi 2 uses the Cortex-A7 processor, which includes version 4 of the VFP instruction set and version 2 of the Advanced SIMD (NEON) instruction set. You can now switch on this at assembly time using the new switches NoARMVv4 and SupportARMVv4. Version 2.50. Tagged as 'HdrSrc-2_50'
-
- 06 Jan, 2015 1 commit
-
-
Jeffrey Lee authored
Detail: Makefile - As with 'All32', 'All' is now always exported. Useful for PlingSystem. Admin: Tested building PlingSystem Version 2.49. Tagged as 'HdrSrc-2_49'
-
- 19 Oct, 2014 1 commit
-
-
Steve Revill authored
We now do the same things as for the export phase, but rather than putting the results into the build's export directory, we put them somewhere relative to the INSTDIR directory. Version 2.48. Tagged as 'HdrSrc-2_48'
-
- 12 Oct, 2014 1 commit
-
-
Steve Revill authored
Version 2.47. Tagged as 'HdrSrc-2_47'
-
- 24 Sep, 2014 1 commit
-
-
Ben Avison authored
Detail: * Extra filetype for Windows .CUR files * Warning about Hdr:Wimp being included before Hdr:Services was mistakenly being generated every time both files were included, in any order. This is because it tested Service_WimpToolSpritesChanged, but that's declared using the # operator, so it is valid for forward as well as backward references. Changed it to test on a variable, which is only valid for backward references (see corresponding change to Wimp 5.46). Admin: Tested the warning bugfix with the BASIC module, which uses both headers. Version 2.46. Tagged as 'HdrSrc-2_46'
-
- 16 Sep, 2014 1 commit
-
-
Steve Revill authored
Version 2.45. Tagged as 'HdrSrc-2_45'
-
- 04 Aug, 2014 1 commit
-
-
Ben Avison authored
Version 2.44. Tagged as 'HdrSrc-2_44'
-
- 29 Jun, 2014 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/Debug - Added DADebug support. Doesn't cache the DADebug WriteC pointer in memory anywhere, so can safely be used from a ROM module or if DADebug is loaded/unloaded. Admin: Tested on BB-xM Version 2.43. Tagged as 'HdrSrc-2_43'
-
- 09 Mar, 2014 2 commits
-
-
Jeffrey Lee authored
Detail: hdr/Sprite - Added OS_SpriteOp 65 definition, bump SpriteReason_BadReasonCode up to 66 Admin: Tested on Iyonix, BB-xM Version 2.42. Tagged as 'HdrSrc-2_42'
-
Ben Avison authored
Detail: * Add extra flag definition to Hdr:GraphicsV * Decloak two system service calls previously used only by ROL fork Version 2.41. Tagged as 'HdrSrc-2_41'
-
- 26 Jan, 2014 1 commit
-
-
Ben Avison authored
Version 2.40. Tagged as 'HdrSrc-2_40'
-
- 03 Jan, 2014 1 commit
-
-
Ben Avison authored
Version 2.39. Tagged as 'HdrSrc-2_39'
-
- 15 Dec, 2013 1 commit
-
-
Ben Avison authored
Detail: Kernel graphics allocations for Jeffrey Lee Version 2.38. Tagged as 'HdrSrc-2_38'
-
- 29 Nov, 2013 1 commit
-
-
Ben Avison authored
Detail: * Add error block for BASIC module * Retire RTCSupport switch in Hdr:Machine.Machine Version 2.37. Tagged as 'HdrSrc-2_37'
-
- 18 Nov, 2013 1 commit
-
-
Ben Avison authored
Detail: * Retire hdr:FreeWay in favour of hdr:FreewayReg * SWI chunk and error base for RTC module * New shared single error number for drivers to report hardware not found * Single service calls for boot sequence to inform (primarily ROM) modules that system variables have become valid Version 2.36. Tagged as 'HdrSrc-2_36'
-
- 13 Oct, 2013 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/Sprite - Add OS_SpriteOp 38 (CreateRemoveAlpha), for converting between 1bpp masks, alpha masks, and alpha channels Admin: Tested on BB-xM Version 2.35. Tagged as 'HdrSrc-2_35'
-
- 06 Oct, 2013 1 commit
-
-
Ben Avison authored
Version 2.34. Tagged as 'HdrSrc-2_34'
-