Commit 1b15fced authored by Jeffrey Lee's avatar Jeffrey Lee

Service_ModeExtension tweak + docs update

Detail:
  s/vdu/legacymodes - Make the Service_ModeExtension implementation automatically use ExtraBytes to request that the row length is a multiple of a word (since things fail with non-word aligned rows)
  hdr/VIDCList - Un-deprecate SyncPol bits 2 & 3 and improve the comments to indicate the difference between SyncPol interlace and control list interlace
Admin:
  Tested on BB-xM


Version 6.17. Tagged as 'Kernel-6_17'
parent 6f366d87
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "6.16"
Module_Version SETA 616
Module_MajorVersion SETS "6.17"
Module_Version SETA 617
Module_MinorVersion SETS ""
Module_Date SETS "19 Nov 2018"
Module_ApplicationDate SETS "19-Nov-18"
Module_Date SETS "29 Nov 2018"
Module_ApplicationDate SETS "29-Nov-18"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "apache/RiscOS/Sources/Kernel"
Module_FullVersion SETS "6.16"
Module_HelpVersion SETS "6.16 (19 Nov 2018)"
Module_FullVersion SETS "6.17"
Module_HelpVersion SETS "6.17 (29 Nov 2018)"
END
/* (6.16)
/* (6.17)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 6.16
#define Module_MajorVersion_CMHG 6.17
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 19 Nov 2018
#define Module_Date_CMHG 29 Nov 2018
#define Module_MajorVersion "6.16"
#define Module_Version 616
#define Module_MajorVersion "6.17"
#define Module_Version 617
#define Module_MinorVersion ""
#define Module_Date "19 Nov 2018"
#define Module_Date "29 Nov 2018"
#define Module_ApplicationDate "19-Nov-18"
#define Module_ApplicationDate "29-Nov-18"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "apache/RiscOS/Sources/Kernel"
#define Module_FullVersion "6.16"
#define Module_HelpVersion "6.16 (19 Nov 2018)"
#define Module_LibraryVersionInfo "6:16"
#define Module_FullVersion "6.17"
#define Module_HelpVersion "6.17 (29 Nov 2018)"
#define Module_LibraryVersionInfo "6:17"
......@@ -55,7 +55,7 @@ ControlList_ExternalRegister # 1
ControlList_HClockSelect # 1
ControlList_RClockFrequency # 1
ControlList_DPMSState # 1
ControlList_Interlaced # 1
ControlList_Interlaced # 1 ; 1 = interlace sync, and adjust DMA so each field shows alternate rows from the framebuffer
ControlList_OutputFormat # 1
ControlList_ExtraBytes # 1
ControlList_NColour # 1
......@@ -67,9 +67,9 @@ ControlList_Terminator * -1
; bits/flags in VIDCList3_SyncPol word:
;
SyncPol_InvertHSync * 1 ; 0 = positive, 1 = negative
SyncPol_InvertVSync * 2 ; 0 = positive, 2 = negative
SyncPol_InterlaceSpecified * 4 ; if set, interlace bit has been specified, else filled in by kernel. Deprecated, use control list item instead.
SyncPol_Interlace * 8 ; set=interlaced, either specified by service call claimant or filled in from *TV by kernel. Deprecated, use control list item instead.
SyncPol_InvertVSync * 2 ; 0 = positive, 1 = negative
SyncPol_InterlaceSpecified * 4 ; if set, interlace bit has been specified, else filled in by kernel
SyncPol_Interlace * 8 ; 0 = progressive sync, 1 = interlace sync (either specified by service call claimant or filled in from *TV by kernel). Note: Does not adjust DMA, so (with a static image) both fields are identical.
OPT OldOpt
......
......@@ -253,6 +253,14 @@ HandleServiceModeExtension ROUT
MOV r2, #ControlList_ModeFlags
STMIA r0, {r2,lr} ; ModeFlags
; The OS requires that framebuffer rows start on word boundaries;
; if padding is needed for this, signal it to the driver via ExtraBytes,
; so that drivers don't need to know of the OS's limitation (although
; we do assume that the driver doesn't request that ExtraBytes be
; modified to something inappropriate!)
ADD r10, r10, #3
BIC r10, r10, #3
; Check for custom LineLength and convert to ExtraBytes
SUBS lr, r10, r9, LSR #3
Pull "r9-r10"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment