[openfirmware] r949 - in cpu/x86/pc: . biosload

svn at openfirmware.info svn at openfirmware.info
Tue Sep 30 22:23:34 CEST 2008


Author: wmb
Date: 2008-09-30 22:23:34 +0200 (Tue, 30 Sep 2008)
New Revision: 949

Modified:
   cpu/x86/pc/biosload/addrs.fth
   cpu/x86/pc/biosload/biostart.bth
   cpu/x86/pc/biosload/devices.fth
   cpu/x86/pc/biosload/probemem.fth
   cpu/x86/pc/biosload/start.bth
   cpu/x86/pc/getms.fth
Log:
Biosload build - more support for building to run under VirtualBox.



Modified: cpu/x86/pc/biosload/addrs.fth
===================================================================
--- cpu/x86/pc/biosload/addrs.fth	2008-09-30 20:18:05 UTC (rev 948)
+++ cpu/x86/pc/biosload/addrs.fth	2008-09-30 20:23:34 UTC (rev 949)
@@ -20,6 +20,14 @@
   h#   08.0000 constant dropin-size
 [then]
 
+[ifdef] virtualbox-loaded
+  h#   f0.0000 constant dropin-base  \ Location of payload in RAM
+  h#   08.0000 constant dropin-size
+  h#    1.0000 constant dma-base  \ DMA heap
+  h#    8.0000 constant dma-size
+
+[then]
+
 [ifdef] preof-loaded
 h# 2000.0000 constant ramsize
 h# fff8.0020 constant dropin-base  \ Location of payload in ROM

Modified: cpu/x86/pc/biosload/biostart.bth
===================================================================
--- cpu/x86/pc/biosload/biostart.bth	2008-09-30 20:18:05 UTC (rev 948)
+++ cpu/x86/pc/biosload/biostart.bth	2008-09-30 20:23:34 UTC (rev 949)
@@ -15,7 +15,7 @@
 
 hex
 
-fload ${BP}/cpu/x86/pc/biosload/addrs.fth
+fload ${BP}/cpu/x86/pc/biosload/config.fth
 
 h# 0.0400 constant gdt-pa
 h# 0.1000 constant stacktop

Modified: cpu/x86/pc/biosload/devices.fth
===================================================================
--- cpu/x86/pc/biosload/devices.fth	2008-09-30 20:18:05 UTC (rev 948)
+++ cpu/x86/pc/biosload/devices.fth	2008-09-30 20:23:34 UTC (rev 949)
@@ -23,10 +23,6 @@
 [then]
 
    fload ${BP}/cpu/x86/pc/biosload/pcinode.fth	\ System-specific words for PCI
-   [ifdef] use-mediagx
-   h# 4100.0000 to first-mem		\ Avoid scratchpad RAM
-   h# ff00.0000 to mem-space-top
-   [then]
 end-package
 stand-init: PCI host bridge
    " /pci" " init" execute-device-method drop
@@ -58,46 +54,30 @@
 fload ${BP}/cpu/x86/pc/getms.fth
 [then]
 
-[ifdef] use-mediagx
-fload ${BP}/dev/mediagx/reg.fth		\ MediaGX constants and access
-fload ${BP}/dev/mediagx/dump.fth
-[then]
-
 [ifdef] use-pci-isa
 
 [ifdef] addresses-assigned
 \ This must precede isamisc.fth in the load file, to execute it first
-fload ${BP}/cpu/x86/pc/biosload/moveisa.fth
+fload ${BP}/cpu/x86/pc/moveisa.fth
 [then]
 
 0 0  " 0"  " /pci" begin-package
    fload ${BP}/dev/pci/isa.fth		\ ISA bus bridge under PCI node
    fload ${BP}/dev/pci/isamisc.fth
 end-package
-
-[ifdef] addresses-assigned
-fload ${BP}/dev/mediagx/cx5530/nomapsmi.fth
 [then]
-[then]
 
-dev /interrupt-controller
-h# 20 to vector-base0
-h# 28 to vector-base1
-device-end
-
-[ifdef] use-mediagx
-0 0 " 40008100" " /" begin-package
-   fload ${BP}/dev/mediagx/video/loadpkg.fth
-end-package
-devalias screen /display
-[then]
-
 [ifdef] use-pc87560
 0 0  " 5,1"  " /pci" begin-package	\ ISA bus bridge
    fload ${BP}/dev/pc87560.fth	\ SouthBridge ISA bus bridge
 end-package
 [then]
 
+dev /interrupt-controller
+h# 20 to vector-base0
+h# 28 to vector-base1
+device-end
+
 [ifdef] use-pc87317
 fload ${BP}/dev/pc87317.fth		\ National PC87317 superIO
 [then]
@@ -109,22 +89,30 @@
    dup value /device
    constant /device-phys
    my-address my-space /device-phys reg
-   fload ${BP}/cpu/x86/pc/flashpkg.fth
+\   fload ${BP}/cpu/x86/pc/flashpkg.fth
+   fload ${BP}/dev/flashpkg.fth
+end-package
 
-   : init  ( comp$ /device -- )
-      to /device  2>r
-      0 0 encode-bytes
-      2r> encode-string encode+
-      " rom" encode-string encode+
-      " compatible" property
-[ifdef] enable-flash-select      
-      /device /device-phys <>  if  enable-flash-select  then
-[then]
-   ;
+[ifdef] notdef
+\ Create a node below the top-level FLASH node to accessing the portion
+\ containing the dropin modules
+0 0   0 0    " flash" begin-package
+   " dropins" device-name
 
+   dropin-size constant /device
+   fload ${BP}/dev/subrange.fth
 end-package
-" rom"  dropin-base <# u#s " /flash@" hold$ u#>  $devalias
+[then]
 
+\ devalias dropins /dropins
+devalias dropins /flash
+
+\ Create a pseudo-device that presents the dropin modules as a filesystem.
+fload ${BP}/ofw/fs/dropinfs.fth
+
+\ This devalias lets us say, for example, "dir rom:"
+devalias rom     /dropin-fs
+
 fload ${BP}/cpu/x86/forthint.fth	\ Low-level interrupt handling code
 fload ${BP}/dev/isa/irq.fth		\ ISA interrupt dispatcher
 fload ${BP}/cpu/x86/pc/isatick.fth		\ Use ISA timer as the alarm tick timer
@@ -195,8 +183,8 @@
 [ifdef] pseudo-nvram
 fload ${BP}/cpu/x86/pc/biosload/filenv.fth
 dev /file-nvram
-: floppy-nv-file  ( -- )  " a:\nvram.dat"  ;
-' floppy-nv-file to nv-file
+: hd-nv-file  ( -- )  " c:\nvram.dat"  ;
+' hd-nv-file to nv-file
 device-end
 stand-init: Pseudo-NVRAM
    " /file-nvram" open-dev  to nvram-node

Modified: cpu/x86/pc/biosload/probemem.fth
===================================================================
--- cpu/x86/pc/biosload/probemem.fth	2008-09-30 20:18:05 UTC (rev 948)
+++ cpu/x86/pc/biosload/probemem.fth	2008-09-30 20:23:34 UTC (rev 949)
@@ -41,9 +41,9 @@
       fw-pa /fw-ram +  heap-base heap-size +  umax  /ram  release
    then
 
-   dropin-base /ram u<  if
-      dropin-base dropin-size +  /ram over -  release
-   then
+\   dropin-base /ram u<  if
+\      dropin-base dropin-size +  /ram over -  release
+\   then
 [then]
 ;
 

Modified: cpu/x86/pc/biosload/start.bth
===================================================================
--- cpu/x86/pc/biosload/start.bth	2008-09-30 20:18:05 UTC (rev 948)
+++ cpu/x86/pc/biosload/start.bth	2008-09-30 20:23:34 UTC (rev 949)
@@ -28,7 +28,7 @@
 
 label startup
 [ifdef] debug-startup
-ascii x report
+\ ascii x report
 [then]
 
    ret

Modified: cpu/x86/pc/getms.fth
===================================================================
--- cpu/x86/pc/getms.fth	2008-09-30 20:18:05 UTC (rev 948)
+++ cpu/x86/pc/getms.fth	2008-09-30 20:23:34 UTC (rev 949)
@@ -56,7 +56,7 @@
       \ We use "0<" instead of "0<=" so that we are sure to wait at least
       \ the requested time; otherwise we might not wait long enough if the
       \ first call to get-msecs were to occur just before the timer ticked.
-      begin   dup get-msecs -  0<=  until   \ Loop until target time reached
+      begin   dup ?halt get-msecs -  0<=  until   \ Loop until target time reached
 
       drop                  ( )
    else                     ( #ms )




More information about the openfirmware mailing list