[OpenBIOS] [PATCH 4/6] ppc: add basic read-only Forth register support

Mark Cave-Ayland mark.cave-ayland at ilande.co.uk
Sat Oct 8 12:56:10 CEST 2016


Signed-off-by: Mark Cave-Ayland <mark.cave-ayland at ilande.co.uk>
---
 arch/ppc/ppc.fs |  127 ++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 83 insertions(+), 44 deletions(-)

diff --git a/arch/ppc/ppc.fs b/arch/ppc/ppc.fs
index 0414f22..f3b439d 100644
--- a/arch/ppc/ppc.fs
+++ b/arch/ppc/ppc.fs
@@ -4,52 +4,91 @@ include config.fs
 \ registers 
 \ -------------------------------------------------------------------------
 
-0 value %cr
-0 value %ctr
-0 value %lr
-0 value %msr
-0 value %srr0
-0 value %srr1
-0 value %pc							\ should be an alias for %srr0
+: %cr saved-context h# 7 cells + @ ;
+: %ctr saved-context h# 6 cells + @ ;
+: %lr saved-context h# 1 cells + @ ;
+\ 0 value %msr
+\ 0 value %srr0
+\ 0 value %srr1
+\ 0 value %pc							\ should be an alias for %srr0
 
-0 value %r0
-0 value %r1
-0 value %r2
-0 value %r3
-0 value %r4
-0 value %r5
-0 value %r6
-0 value %r7
-0 value %r8
-0 value %r9
-0 value %r10
-0 value %r11
-0 value %r12
-0 value %r13
-0 value %r14
-0 value %r15
-0 value %r16
-0 value %r17
-0 value %r18
-0 value %r19
-0 value %r20
-0 value %r21
-0 value %r22
-0 value %r23
-0 value %r24
-0 value %r25
-0 value %r26
-0 value %r27
-0 value %r28
-0 value %r29
-0 value %r30
-0 value %r31
+: %r0 saved-context h# 3 cells + @ ;
+: %r1 saved-context h# 0 cells + @ ;
+: %r2 saved-context h# 4 cells + @ ;
+: %r3 saved-context h# 5 cells + @ ;
+: %r4 saved-context h# 9 cells + @ ;
+: %r5 saved-context h# a cells + @ ;
+: %r6 saved-context h# b cells + @ ;
+: %r7 saved-context h# c cells + @ ;
+: %r8 saved-context h# d cells + @ ;
+: %r9 saved-context h# e cells + @ ;
+: %r10 saved-context h# f cells + @ ;
+: %r11 saved-context h# 10 cells + @ ;
+: %r12 saved-context h# 11 cells + @ ;
+: %r13 saved-context h# 12 cells + @ ;
+: %r14 saved-context h# 13 cells + @ ;
+: %r15 saved-context h# 14 cells + @ ;
+: %r16 saved-context h# 15 cells + @ ;
+: %r17 saved-context h# 16 cells + @ ;
+: %r18 saved-context h# 17 cells + @ ;
+: %r19 saved-context h# 18 cells + @ ;
+: %r20 saved-context h# 19 cells + @ ;
+: %r21 saved-context h# 1a cells + @ ;
+: %r22 saved-context h# 1b cells + @ ;
+: %r23 saved-context h# 1c cells + @ ;
+: %r24 saved-context h# 1d cells + @ ;
+: %r25 saved-context h# 1e cells + @ ;
+: %r26 saved-context h# 1f cells + @ ;
+: %r27 saved-context h# 20 cells + @ ;
+: %r28 saved-context h# 21 cells + @ ;
+: %r29 saved-context h# 22 cells + @ ;
+: %r30 saved-context h# 23 cells + @ ;
+: %r31 saved-context h# 24 cells + @ ;
 
-0 value %xer
-0 value %sprg0
-0 value %sprg1
-0 value %sprg2
-0 value %sprg3
+: %xer saved-context h# 8 cells + @ ;
+\ 0 value %sprg0
+\ 0 value %sprg1
+\ 0 value %sprg2
+\ 0 value %sprg3
+
+: .registers
+  cr
+  s" %cr: " type %cr u. cr
+  s" %ctr: " type %ctr u. cr
+  s" %lr: " type %lr u. cr
+  s" %r0: " type %r0 u. cr
+  s" %r1: " type %r1 u. cr
+  s" %r2: " type %r2 u. cr
+  s" %r3: " type %r3 u. cr
+  s" %r4: " type %r4 u. cr
+  s" %r5: " type %r5 u. cr
+  s" %r6: " type %r6 u. cr
+  s" %r7: " type %r7 u. cr
+  s" %r8: " type %r8 u. cr
+  s" %r9: " type %r9 u. cr
+  s" %r10: " type %r10 u. cr
+  s" %r11: " type %r11 u. cr
+  s" %r12: " type %r12 u. cr
+  s" %r13: " type %r13 u. cr
+  s" %r14: " type %r14 u. cr
+  s" %r15: " type %r15 u. cr
+  s" %r16: " type %r16 u. cr
+  s" %r17: " type %r17 u. cr
+  s" %r18: " type %r18 u. cr
+  s" %r19: " type %r19 u. cr
+  s" %r20: " type %r20 u. cr
+  s" %r21: " type %r21 u. cr
+  s" %r22: " type %r22 u. cr
+  s" %r23: " type %r23 u. cr
+  s" %r24: " type %r24 u. cr
+  s" %r25: " type %r25 u. cr
+  s" %r26: " type %r26 u. cr
+  s" %r27: " type %r27 u. cr
+  s" %r28: " type %r28 u. cr
+  s" %r29: " type %r29 u. cr
+  s" %r30: " type %r30 u. cr
+  s" %r31: " type %r31 u. cr
+;
 
 \ -------------------------------------------------------------------------
 \ Load VGA FCode driver blob
-- 
1.7.10.4




More information about the OpenBIOS mailing list