summaryrefslogtreecommitdiffstats
path: root/qemu/roms/openbios/forth/packages
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/openbios/forth/packages')
-rw-r--r--qemu/roms/openbios/forth/packages/Kconfig16
-rw-r--r--qemu/roms/openbios/forth/packages/README11
-rw-r--r--qemu/roms/openbios/forth/packages/build.xml19
-rw-r--r--qemu/roms/openbios/forth/packages/deblocker.fs63
-rw-r--r--qemu/roms/openbios/forth/packages/disklabel.fs22
-rw-r--r--qemu/roms/openbios/forth/packages/obp-tftp.fs22
-rw-r--r--qemu/roms/openbios/forth/packages/packages.fs17
-rw-r--r--qemu/roms/openbios/forth/packages/terminal-emulator.fs23
8 files changed, 193 insertions, 0 deletions
diff --git a/qemu/roms/openbios/forth/packages/Kconfig b/qemu/roms/openbios/forth/packages/Kconfig
new file mode 100644
index 000000000..16fa30657
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/Kconfig
@@ -0,0 +1,16 @@
+
+config PKG_DEBLOCKER
+ bool "Deblocker"
+ default y
+
+config PKG_DISKLABEL
+ bool "Disk Label"
+ default y
+
+config PKG_OBP_TFTP
+ bool "OBP-TFTP"
+ default y
+
+config PKG_TERMINAL_EMULATOR
+ bool "Terminal Emulator"
+ default y
diff --git a/qemu/roms/openbios/forth/packages/README b/qemu/roms/openbios/forth/packages/README
new file mode 100644
index 000000000..009f9ec35
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/README
@@ -0,0 +1,11 @@
+IEEE 1275-1994 support packages
+-------------------------------
+
+These files create the sub nodes of the /packages node. The nodes
+do normally not need an open or close method since their methods are
+called statically.
+
+Currently there are the following support packages:
+* deblocker
+* obp-tftp
+*
diff --git a/qemu/roms/openbios/forth/packages/build.xml b/qemu/roms/openbios/forth/packages/build.xml
new file mode 100644
index 000000000..16184717e
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/build.xml
@@ -0,0 +1,19 @@
+<build>
+
+ <!--
+ build description for Open Firmware support packages
+
+ Copyright (C) 2004-2005 by Stefan Reinauer
+ See the file "COPYING" for further information about
+ the copyright and warranty status of this work.
+ -->
+
+ <dictionary name="openbios" target="forth">
+ <object source="packages.fs"/>
+ <object source="deblocker.fs" condition="PKG_DEBLOCKER"/>
+ <object source="disklabel.fs" condition="PKG_DISKLABEL"/>
+ <object source="terminal-emulator.fs" condition="PKG_TERM_EMUL"/>
+ <object source="obp-tftp.fs" condition="OBP_TFTP"/>
+ </dictionary>
+
+</build>
diff --git a/qemu/roms/openbios/forth/packages/deblocker.fs b/qemu/roms/openbios/forth/packages/deblocker.fs
new file mode 100644
index 000000000..31a37d002
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/deblocker.fs
@@ -0,0 +1,63 @@
+\ tag: deblocker support package
+\
+\ Copyright (C) 2003 Stefan Reinauer
+\
+\ See the file "COPYING" for further information about
+\ the copyright and warranty status of this work.
+\
+
+" /packages" find-device
+
+\ The deblocker package makes it easy to implement byte-oriented device
+\ methods, using the block-oriented or record-oriented methods defined by
+\ devices such as disks or tapes. It provides a layer of buffering between
+\ the high-level byte-oriented interface and the low-level block-oriented
+\ interface. deblocker uses the max-transfer, block-size, read-blocks and
+\ write-blocks methods of its parent.
+
+new-device
+ " deblocker" device-name
+ \ open ( -- flag )
+ \ Prepares the package for subsequent use, allocating the buffers used
+ \ by the deblocking process based upon the values returned by the parent
+ \ instance's max-transfer and block-size methods. Returns -1 if the
+ \ operation succeeds, 0 otherwise.
+ : open ( -- flag )
+
+ ;
+
+ \ close ( -- )
+ \ Frees all resources that were allocated by open.
+ : close ( -- )
+ ;
+
+ \ read ( adr len -- actual )
+ \ Reads at most len bytes from the device into the memory buffer
+ \ beginning at adr. Returns actual, the number of bytes actually
+ \ read, or 0 if the read operation failed. Uses the parent's read-
+ \ blocks method as necessary to satisfy the request, buffering any
+ \ unused bytes for the next request.
+
+ : read ( adr len -- actual )
+ ;
+
+ \ Writes at most len bytes from the device into the memory buffer
+ \ beginning at adr. Returns actual, the number of bytes actually
+ \ read, or 0 if the write operation failed. Uses the parent's write-
+ \ blocks method as necessary to satisfy the request, buffering any
+ \ unused bytes for the next request.
+
+ : write ( adr len -- actual )
+ ;
+
+ \ Sets the device position at which the next read or write will take
+ \ place. The position is specified by the 64-bit number x.position.
+ \ Returns 0 if the operation succeeds or -1 if it fails.
+
+ : seek ( x.position -- flag )
+ ;
+
+finish-device
+
+\ clean up afterwards
+device-end
diff --git a/qemu/roms/openbios/forth/packages/disklabel.fs b/qemu/roms/openbios/forth/packages/disklabel.fs
new file mode 100644
index 000000000..39aa13e50
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/disklabel.fs
@@ -0,0 +1,22 @@
+\ tag: disklabel support package
+\
+\ Copyright (C) 2003 Stefan Reinauer
+\
+\ See the file "COPYING" for further information about
+\ the copyright and warranty status of this work.
+\
+
+" /packages" find-device
+
+\
+\ IEEE 1275 disklabel package
+\
+
+new-device
+ " disklabel" device-name
+ \ now the methods...
+
+finish-device
+
+\ clean up afterwards
+device-end
diff --git a/qemu/roms/openbios/forth/packages/obp-tftp.fs b/qemu/roms/openbios/forth/packages/obp-tftp.fs
new file mode 100644
index 000000000..62f0e72e5
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/obp-tftp.fs
@@ -0,0 +1,22 @@
+\ tag: tftp support package
+\
+\ Copyright (C) 2003 Stefan Reinauer
+\
+\ See the file "COPYING" for further information about
+\ the copyright and warranty status of this work.
+\
+
+" /packages" find-device
+
+\
+\ IEEE 1275 obp-tftp package
+\
+
+new-device
+ " obp-tftp" device-name
+ \ now the methods...
+
+finish-device
+
+\ clean up afterwards
+device-end
diff --git a/qemu/roms/openbios/forth/packages/packages.fs b/qemu/roms/openbios/forth/packages/packages.fs
new file mode 100644
index 000000000..9f79f9e5f
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/packages.fs
@@ -0,0 +1,17 @@
+\ tag: /packages sub device tree
+\
+\ Copyright (C) 2003 Stefan Reinauer
+\
+\ See the file "COPYING" for further information about
+\ the copyright and warranty status of this work.
+\
+
+" /" find-device
+
+new-device
+ " packages" device-name
+ : open true ;
+ : close ;
+finish-device
+
+device-end
diff --git a/qemu/roms/openbios/forth/packages/terminal-emulator.fs b/qemu/roms/openbios/forth/packages/terminal-emulator.fs
new file mode 100644
index 000000000..0ecd348be
--- /dev/null
+++ b/qemu/roms/openbios/forth/packages/terminal-emulator.fs
@@ -0,0 +1,23 @@
+\ tag: terminal emulator support package
+\
+\ Copyright (C) 2003 Stefan Reinauer
+\
+\ See the file "COPYING" for further information about
+\ the copyright and warranty status of this work.
+\
+
+" /packages" find-device
+
+\
+\ IEEE 1275 terminal-emulator package
+\
+
+new-device
+ " terminal-emulator" device-name
+ \ now the methods...
+
+finish-device
+
+\ clean up afterwards
+
+device-end