Veneer.exe: Difference between revisions

From Computers Wiki
Jump to navigationJump to search
(Create page)
 
(→‎Notes: Add NTVDM weirdness)
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''<code>VENEER.EXE</code>''' is a COFF executable used to start the boot sequence for Windows NT on PowerPC.
'''<code>VENEER.EXE</code>''' is a Microsoft COFF executable used to start the boot sequence for Windows NT on PowerPC.


== Description ==
== Description ==
Line 5: Line 5:
<code>VENEER.EXE</code> is an ARC firmware implementation that runs on an existing Open Firmware environment.<ref>https://www.vogons.org/viewtopic.php?p=864612#p864612</ref>
<code>VENEER.EXE</code> is an ARC firmware implementation that runs on an existing Open Firmware environment.<ref>https://www.vogons.org/viewtopic.php?p=864612#p864612</ref>


== Notes ==
It treats IDE devices as SCSI devices.<ref>https://github.com/openbios/openfirmware/blob/d5cc657ce81c0f7d1857b4687766b64d75a4145d/ofw/gui/findos.fth#L37</ref>


* It treats IDE devices as SCSI devices.<ref>https://github.com/openbios/openfirmware/blob/d5cc657ce81c0f7d1857b4687766b64d75a4145d/ofw/gui/findos.fth#L37</ref>
== Versions I have ==
* It only recognizes 601, 603, 603e, 604, and 604e CPUs.<ref>https://lists.gnu.org/archive/html/qemu-ppc/2017-07/msg00581.html</ref>
* It appears to be present in the Windows NT source tree. Version 3.0 has strings referring to files in <code>D:\nt\private\ntos\boot\veneer\</code>, and Version 3.03 has <code>S:\BUILDS\NT400\1345.960918\SRC\DAYTONA\MOT\VENEER\</code>.
* Version 1.0 complains about <code>multi</code>, whereas Version 3.0 and 3.03 do not. Version 1.0 will print: <code>GetDeviceAttribute: node multi(1) not PeripheralClass.</code>
* Tested in Version 3.03, if a given node in the path is not <code>PeripheralClass</code>, a <code>dump_node</code> diagram of the node, its parent, its children, and its peers will be printed to the screen, along with the name, class, type, and key of the offending node.
* Windows NT thinks it is a 16-bit executable for some reason. If you try to run it as such, you get a <code>Program too big to fit in memory</code> message.

== Versions ==


* Open Firmware ARC Interface Version 3.03 (Sep 19 1996 - 02:29:26), 128512 bytes<ref>[[Motorola Net6200/166]] <code>\OS\VENEER.EXE</code></ref>
* Open Firmware ARC Interface Version 3.03 (Sep 19 1996 - 02:29:26), 128512 bytes<ref>[[Motorola Net6200/166]] <code>\OS\VENEER.EXE</code></ref>
* Open Firmware ARC Interface Version 3.0 (Jul 12 1996 - 18:46:28), 161792 bytes<ref>[[Motorola Net6200/166]] <code>\OS\WINNT40\VENEER.EXE</code></ref><ref>Windows NT 4.0 Workstation retail CD-ROM <code>\PPC\VENEER.EXE</code></ref>
* Open Firmware ARC Interface Version 3.0 (Jul 12 1996 - 18:46:28), 161792 bytes<ref>[[Motorola Net6200/166]] <code>\OS\WINNT40\VENEER.EXE</code></ref><ref>Windows NT 4.0 Workstation retail CD-ROM <code>\PPC\VENEER.EXE</code></ref>
* Open Firmware ARC Interface Version 1.0 (May 10 1995 - 19:01:10), 83968 bytes<ref>Windows NT 3.51 Workstation retail CD-ROM <code>\PPC\VENEER.EXE</code></ref>

== Error messages ==

The following boot-time error messages have been seen so far:
* <code>Can't open disk label package</code>: File system not supported
* <code>Couldn't read entire file header: got 0</code>: File is empty
* <code>VrOpen returned 8</code>: File not found
* <code>VrOpen returned d</code>: Disk not found
* <code>Wrong machine type: 4947</code>: File not a valid COFF PowerPC executable


== References ==
== References ==

Latest revision as of 00:48, 7 February 2024

VENEER.EXE is a Microsoft COFF executable used to start the boot sequence for Windows NT on PowerPC.

Description

VENEER.EXE is an ARC firmware implementation that runs on an existing Open Firmware environment.[1]

Notes

  • It treats IDE devices as SCSI devices.[2]
  • It only recognizes 601, 603, 603e, 604, and 604e CPUs.[3]
  • It appears to be present in the Windows NT source tree. Version 3.0 has strings referring to files in D:\nt\private\ntos\boot\veneer\, and Version 3.03 has S:\BUILDS\NT400\1345.960918\SRC\DAYTONA\MOT\VENEER\.
  • Version 1.0 complains about multi, whereas Version 3.0 and 3.03 do not. Version 1.0 will print: GetDeviceAttribute: node multi(1) not PeripheralClass.
  • Tested in Version 3.03, if a given node in the path is not PeripheralClass, a dump_node diagram of the node, its parent, its children, and its peers will be printed to the screen, along with the name, class, type, and key of the offending node.
  • Windows NT thinks it is a 16-bit executable for some reason. If you try to run it as such, you get a Program too big to fit in memory message.

Versions

  • Open Firmware ARC Interface Version 3.03 (Sep 19 1996 - 02:29:26), 128512 bytes[4]
  • Open Firmware ARC Interface Version 3.0 (Jul 12 1996 - 18:46:28), 161792 bytes[5][6]
  • Open Firmware ARC Interface Version 1.0 (May 10 1995 - 19:01:10), 83968 bytes[7]

Error messages

The following boot-time error messages have been seen so far:

  • Can't open disk label package: File system not supported
  • Couldn't read entire file header: got 0: File is empty
  • VrOpen returned 8: File not found
  • VrOpen returned d: Disk not found
  • Wrong machine type: 4947: File not a valid COFF PowerPC executable

References