- 16 Oct, 2000 2 commits
-
-
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.
-
Mike Stephens authored
Version 5.35, 4.79.2.9. Tagged as 'Kernel-5_35-4_79_2_9'
-
- 10 Oct, 2000 2 commits
-
-
Mike Stephens authored
-
Stewart Brodie authored
Imported from Kernel 5.36.
-
- 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 6 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'
-
Mike Stephens authored
-
Kevin Bracey authored
Version 5.35, 4.79.2.7. Tagged as 'Kernel-5_35-4_79_2_7'
-
Mike Stephens authored
mjs macros switch on HAL for calling video code in HAL/pseudo HAL cases vduhint code even more almost ready to move to HAL Version 5.35, 4.79.2.6. Tagged as 'Kernel-5_35-4_79_2_6'
-
Kevin Bracey authored
Version 5.35, 4.79.2.5. Tagged as 'Kernel-5_35-4_79_2_5'
-
Mike Stephens authored
further kernel/HAL split work in video area almost-HAL code for VIDC20/IOMD in vdu.vduhint, now almost divorced from kernel workspace tested briefly in Ursula desktop environment Version 5.35, 4.79.2.4. Tagged as 'Kernel-5_35-4_79_2_4'
-
- 03 Oct, 2000 1 commit
-
-
Mike Stephens authored
partial video changes for kernel/HAL split near-HAL code for VIDC/IOMD in vdu.vduhint briefly tested in Ursula desktop build still some kernel workspace dependency in near-HAL code Version 5.35, 4.79.2.3. Tagged as 'Kernel-5_35-4_79_2_3'
-
- 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'
-
- 08 Sep, 2000 1 commit
-
-
Robert Catherall authored
[ E2ROMSupport ..... ] Detail: Changes to s.Middle (SysReadInfo routine that used #NVRamSpeed) and s.PMF.i2cutils #NVRamSpeed again Admin: Compiles okay Requires HdrSrc-0_99 or greater (for MaxI2Cspeed variable) Version 5.35. Tagged as 'Kernel-5_35'
-
- 07 Sep, 2000 1 commit
-
-
Robert Catherall authored
(NVRamSpeed is not defined in the Kernel workspace so we need an alternative way to work the speed of the I2C bus - so I've used I2Cticks - defined in PMF.i2cutils) Version 5.34. Tagged as 'Kernel-5_34'
-
- 04 Sep, 2000 1 commit
-
-
Robert Catherall authored
New routine in i2cutils that allows access to protected sections such as MAC address OS_ReadSysInfo 4 now checks both copies MACAddress if MACNVRAM2copies is set Detail: 32K EEPROM has to be configured with IIC address &A6 (i.e wired up on the pcb) ClockNVMemoryFast has been replaced with MaxI2Cspeed so that several different rates can be used depending on the devices on the IIC bus. Admin: Need to implement routine that can use one copy of the MAC address to replace the other in the event of it being corrupted. Version 5.33. Tagged as 'Kernel-5_33'
-
- 18 Aug, 2000 2 commits
-
-
Stewart Brodie authored
Detail: The kernel can now disable all substitutions into error messages that it generates and count the number of times each error is looked up. The ErrorCount BASIC program then displays that information so that you can see if any odd errors are occurring or weird errors that you would not be expecting. It is not sensible to build a release with countmsgusage enabled. Admin: Tested in Ursula build. Version 5.32. Not tagged
-
Stewart Brodie authored
Removed DriversInKernel conditional. Detail: If the territory changes or the resource file changes, the kernel will now decache all the cached error blocks so that next time they are required, they will be looked up again. The error cacheing is now a kernel build option and is always set to on. Removed one of the 5 error messages to be cached - it never seems to happen. The remaining 4 are more frequent. Admin: Tested in Ursula build. Cannot be used with HdrSrc 0.94. HdrSrc 0.95 and later is required (or HdrSrc 0.93 and earlier subject to other kernel requirements) Requires MessageTrans 0.42 or later for correct operation when a replacement messages file is loaded. Version 5.32. Tagged as 'Kernel-5_32'
-
- 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'
-
- 28 Jun, 2000 1 commit
-
-
Ben Avison authored
Added compile-time support for full-resolution teletext characters in teletext emulation mode (MODE 7) for that authentic BBC Micro feel. Also introduced a few useful teletext control features via VDU 23,18. Unrelatedly, fixed *ScreenLoad to work for interlaced displays. Detail: The new typeface is designed on a 16x20 grid (previously we had used 8x10), so it uses a screen resolution of 640x500 pixels (rather than 320x250). Since we have been unable to source a genuine teletext font, and since examination of a BBC Micro suggests that the genuine font may not have been a power-of-2 pixels wide, I have designed one specially, based upon the one supplied in Zap distributions (a 12x20 font). Rather than increase the amount of workspace that the kernel requires for cacheing graphic characters, it now generates them on the fly, as they are required; this should only add about 25% to their rendering time. The new VDU 23 sequences are as follows: VDU 23,18,0,mode,0,0,0,0,0,0 Switch transparency mode mode = 0: "Text" mode: the whole display is set opaque mode = 1: "Mix" mode: foreground colours, and both foreground and background of boxed text are opaque; non-boxed background colours are all transparent mode = 2: "Box" mode: boxed regions are opaque, others are transparent mode = 3: "TV" mode: the whole display is set transparent Default is mode = 0. VDU 23,18,1,suspend,0,0,0,0,0,0 Suspend or resume bitmap updates This call allows an application to request that the kernel suspends updates to the framebuffer bitmap. This allows for a significant speed increase in the rendering time for a large amount of text, for example when redrawing a complete teletext page, because each time you plot a single character, it can cause the whole of the rest of the line to be re-rendered. When you switch out of suspend mode, the whole screen is refreshed in a single pass. Note that the appearance of the display is undefined is you cause a hardware scroll while in suspend mode. suspend = 0: screen update is enabled suspend = 1: screen update is suspended Default is suspend = 0. VDU 23,18,2,reveal,0,0,0,0,0,0 Reveal/conceal reveal = 0: characters between the Conceal control code and the next colour control code are replaced by spaces reveal = 1: all characters are displayed Default is reveal = 0. VDU 23,18,3,black_emable,0,0,0,0,0,0 Enable/disable black foreground colour control codes black_enable = 0: control codes &80 and &90 do nothing black_enable = 1: control code &80 selects black text, control code &90 selects black graphics Default is black_enable = 0. I have performed some timing tests on the rendering of complete teletext pages grabbed from the teletext server. These show that the new code generally imposes a 2x speed hit. However, when using the VDU 23,18,1 suspend function, this improves to a 20% speed increase when compared to the old low-resolution code. Better still, because the framebuffer is only being updated for the final stage of this process, the screen *appears* to be updated some 3x faster than with the old code! A comment on the VDU variable Log2BPC is in order: in previous kernels, this was able unambiguously to refer to both the framebuffer width of a character in bytes, and the framebuffer width of an "addressable pixel" in bits; this no longer works with the 16-pixel wide teletext font. Bearing in mind that future kernels may support Unicode system fonts where the width varies from character to character, I have chosen to fix Log2BPC to the "addressable pixel" definition. Admin: Requires HdrSrc 0.89 and (for non-desktop builds) Interlace 0.61. A monitor definition file containing a definition for a 640x500 screen mode is also required; version 0.40 of ModeFiles contains a suitable mode for STB-400. Tested fairly rigourously on an Ursula build, a Lazarus build and an STB-400 build, using genuine teletext pages and Yellow River Kingdom. Version 5.30. Tagged as 'Kernel-5_30'
-
- 12 May, 2000 1 commit
-
-
Ben Avison authored
Detail: 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. Admin: Not tested. Version 5.28. Tagged as 'Kernel-5_28'
-
- 10 May, 2000 2 commits
-
-
Ben Avison authored
In particular, they can go off when Scroll Lock etc have frozen the text output. Detail: 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. Admin: Not tested. Version 5.27. Tagged as 'Kernel-5_27'
-
David Cotton authored
Detail: 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. Admin: 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
-
- 09 May, 2000 1 commit
-
-
Stewart Brodie authored
Fixed multiple internationalisation of error message. Detail: 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 enormously. Admin: 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'
-
- 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'
-
- 20 Apr, 2000 1 commit
-
-
Kevin Bracey authored
Some POST changes which got lost recommitted. Version 5.24. Not tagged
-
- 17 Apr, 2000 1 commit
-
-
Kevin Bracey authored
Had one of those weekend brainstorms - managed to speed up SWI despatcher _and_ add Thumb support to it. Fixed OS_BreakPt - was confused by PC/PSR split. Version 5.24. Not tagged
-
- 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
-
- 12 Apr, 2000 1 commit
-
-
Stewart Brodie authored
Detail: "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. Admin: Assembled.
-
- 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'
-
- 23 Mar, 2000 1 commit
-
-
Ben Avison authored
Detail: 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. Admin: Tested with the timer code in STB-400 MPEGDriver. Version 5.22. Tagged as 'Kernel-5_22'
-
- 10 Mar, 2000 1 commit
-
-
Kevin Bracey authored
Version 5.21. Tagged as 'Kernel-5_21'
-
- 08 Mar, 2000 1 commit
-
-
Stewart Brodie authored
Detail: 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. Admin: Tested on desktop build in both command-line and TaskWindows. Version 5.20. Tagged as 'Kernel-5_20'
-
- 22 Feb, 2000 1 commit
-
-
Paul Skirrow authored
Detail: 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. Admin: Not tested. MACFROMNVRAM will be removed from HdrSrc. Version 5.17. Tagged as 'Kernel-5_17'
-
- 02 Feb, 2000 1 commit
-
-
Stewart Brodie authored
Ensured that M_Phoebe builds set UtilityModule version to 4.00 Detail: 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. Admin: Required by softload utility for Ursula builds. Tested on Risc PC. Version 5.15. Tagged as 'Kernel-5_15'
-
- 27 Jan, 2000 1 commit
-
-
Stewart Brodie authored
Detail: 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). Admin: Built. Version 5.14. Tagged as 'Kernel-5_14'
-
- 26 Jan, 2000 2 commits
-
-
Ben Avison authored
Changed default PaletteV handler so that read palette reason code returns all four supremacy bits in the palette entries (previously it cleared all except bit 7). This brings it into line with the bulk read reason code. Version 5.11. Tagged as 'Kernel-5_11'
-
Kevin Bracey authored
Kernel now always assumes that 4K and 8K ATMEL EEPROM devices have their top quarter write protected, even if IOMD_C_EEPROMProtect isn't set. Version 5.10. Tagged as 'Kernel-5_10'
-