This is an OS4 port of the "DOS DEVICE DRIVER EXAMPLE FOR AZTEC C" by Matthew
Dillon (http://aminet.net/package.php?package=dev/src/DosDev.lha). OS4
modifications and port by Fredrik Wikstrom (fredrik at a500 dot org).
It's a handler/filesystem for a simple dynamic sized "RAM Disk:". There are a
few issues with it (listed below), but is probably still useful as example
source though..
Issues:
- DSIs when more than one program tries to access the same file (?)
- Multiview complains about "not enough data" when opening a text file
- Icon->Information on the disk shows bad data
- Volume name shows up correctly with "C:info" in the "volumes available" and
in ASL requster but not in shell prompt or icon->info. Shows up correctly in
Workbench after being renamed but not before
When compiled with -DDEBUG the handler prints out debug output (packets
received, etc.) using exec's DebugPrintF. SashimiPPC can be used to capture this
output.
Compiling the handler:
1. make
To enable debug output remove the '#' before -DDEBUG in the Makefile.
Mounting the device:
1. mount test: from mountlist
This mounts a disk with:
Device name: "TEST:"
Volume name: "TEST Disk:"
Changes:
0.5 (29-Nov-06)
- renamed handler to dos-handler to avoid confusion, since it's a handler, not
a device
- handler now compiled without debug output (it's much faster now)
0.4 (22-Jun-06)
- modified code to make use of MakeDosEntry()/FreeDosEntry
- added ACTION_RENAME_DISK support (not fully working for some reason)
0.3 (19-Jun-06)
- added version string
- added support for ACTION_FH_FROM_LOCK packet
0.2 (16-Jun-06)
- added support for ACTION_EXAMINE_FH packet
- fixed handling of ACTION_PARENT packet
0.1 (15-Jun-06)
- first released version
| |