---------------------------------------------------------------------- The following errata should be noted for: "Writing FCode Programs" Part No.: 801-5123-10 Revision A, November 1993 Page 119. (Chapter 8, Hierarchical Devices, Required Methods), add: unique-key ( -- byte) For SBus devices, returns a unique "key" byte value, intended for use as a "key" value for the "write-to-zero" technique of implementing transparent SBus-to-SBus bridge devices. This method returns a unique value in the range {0x01 .. 0xEF} each time it is called. Return values are not unique across system resets. An SBus-to-SBus bridge must implement "unique-key" by calling the "unique-key" method of its parent, thus assuring uniqueness of the returned value throughout the chain of interconnected SBuses. Used by children of an SBus device node as: " unique-key" $call-parent ( key-byte ) Pages 115-117 (dma-alloc, dma-free, dma-map-in, dma-map-out, dma-sync), and also page 244 (dma-alloc), add: "See Appendix C for more information." Page 245. ("draw-logo" text, "line#" sub-heading): Delete last 2 lines of page (misleading cross-reference). Page 312. (Chapter 11, "set-font"), after first paragraph, add: "Note that these routines require that the installed font use the default value of two bytes per character." ------------------------------------------------------------------------- The following errata should be noted for: OpenBoot Command Reference Part No.: 800-6076-11 Revision A, March 1993 Page 57. For general mapping of any device (to generate a virtual address to be used to access the device), the "memmap" command will always work correctly. However, it does require detailed knowledge of the address architecture of the particular system. The following lists a general method for mapping any SBus device from the "ok" prompt, without the need for knowledge of system-dependent device addresses. This method does not depend on the presence of a valid FCode PROM on the SBus device. This method will work on any OpenBoot system version 2.0 or later. ok " /sbus" select-dev ok (offset) (slot#) (size) map-in ( virt ) ok For example, to inspect the FCode PROM for a device in slot#3 of a system, enter: ok " /sbus" select-dev ok 0 3 1000 map-in .s ffed3000 ok dup 20 dump (Dump of first 20 bytes of FCode PROM) ok Possible variations: 1) On some systems, the "pathname" for the system SBus may vary, for example: " /iommu/sbus" (for Sun4M) -or- " /io-unit/sbi" (for Sun4D) The "show-devs" command from the ok prompt (which lists all system devices) is one way to determine the correct path. 2) Direct placement of (offset size) on the stack may or may not work in the most general cases on future systems. If you encounter problems, try the following, more general approach: ok " /sbus" select-dev ok " 3,0" decode-unit ( offset space ) ok 1000 map-in ( virt ) ok