README
上传用户:hy_wanghao
上传日期:2007-01-08
资源大小:279k
文件大小:4k
源码类别:

Shell编程

开发平台:

Visual C++

  1. The ADFlib is a free, portable and open implementation of the Amiga filesystem.
  2. It supports :
  3. - floppy dumps
  4. - multiple partitions harddisk dumps
  5. - UAE hardfiles
  6. - WinNT devices with the 'native driver' written by Dan Sutherland
  7. - mount/unmount/create a device (real one or a dump file),
  8. - mount/unmount/create a volume (partition),
  9. - create/open/close/delete/rename/undel a file,
  10. - read/write bytes from/to a file,
  11. - create/delete/rename/move/undel a directory,
  12. - get directory contents, change current directory, get parent directory
  13. - use dir cache to get directory contents.
  14. It is written in portable C, and support the WinNT platform to access
  15. real drives.
  16. ---
  17. unADF is a unzip like for .ADF files :
  18. unadf [-lrcsp -v n] dumpname.adf [files-with-path] [-d extractdir]
  19.     -l : lists root directory contents
  20.     -r : lists directory tree contents
  21.     -c : use dircache data (must be used with -l)
  22.     -s : display entries logical block pointer (must be used with -l)
  23.     -v n : mount volume #n instead of default #0 volume
  24.     -p : send extracted files to pipe (unadf -p dump.adf Pics/pic1.gif | xv -)
  25.     -d dir : extract to 'dir' directory
  26. Credits:
  27. --------
  28. main design and code             Laurent Clevy
  29. WinNT native driver              Dan Sutherland
  30. New versions and contact e-mail can be found at : 
  31. http://perso.club-internet.fr/lclevy/adflib
  32. COMPILATION
  33. -----------
  34. It had been tested on Intel/Linux with gcc 2.7.2, Solaris 2.6, and
  35. Win32.
  36. The size of long must be 4, the size of short 2.
  37. The library reads disk sectors written with the big endian (Motorola) byte
  38. ordering.
  39. You have to type :
  40. make clean
  41. make depend
  42. make lib
  43. A 'lidadf.a' should be created.
  44. * Byte ordering
  45. 'make clean' remove the temporary files and the 'defendian.h'. In this file,
  46. LITT_ENDIAN must be defined if the target machine uses the little endian 
  47. byte ordering, like this :
  48. #ifndef LITT_ENDIAN
  49. #define LITT_ENDIAN 1
  50. #endif /* LITT_ENDIAN */
  51. This should be done automatically by the 'myconf' shell script. myconf 
  52. autocompiles a C file which detects the byte ordering. The 'defendian.h'
  53. is generated in 'myconf'. 'defendian.h' should be included in every .c file
  54. which uses the LITT_ENDIAN define is used, otherwise the compiler could think
  55. it is not defined, and the target machine is (always) using the big endian
  56. byte ordering.
  57. 'myconf' is launched by 'make depend'.
  58. * Native driver
  59. The NATIV_DIR variable is used to choose the (only one) target platform
  60. of the native driver. The default is :
  61. NATIV_DIR = ./Generic
  62. This one do not give access to any real device. The other one available is
  63. Win32, to access real devices under WinNT.
  64. * Win32DLL
  65. The 'prefix.h' is used to create the Win32 DLL version of the library.
  66. If the WIN32DLL variable is defined in the library code, public functions
  67. are preceded by the '__declspec(dllexport)' directive. If this same
  68. variable is defined, the '__declspec(dllimport)' is put before the functions
  69. prototypes in the 'adflib.h' library include file.
  70. FILES
  71. -----
  72. README The file you are reading
  73. TODO Future improvements and bugfixes
  74. CHANGES Detailed changes
  75. Lib/ main library files
  76. Lib/Win32/ WinNT native driver
  77. Lib/Generic/    native files templates
  78. Boot/ Bootblocks that might by used to put on floppy disks
  79. Docs/ The library developpers documentation 
  80. Faq/ The Amiga Filesystem explained
  81. Test/ Test files and examples (not perfect)
  82. Dumps/ .ADF used to test the library
  83. Refs/ text outputs of the test files
  84. Check/ files stored in the test dumps, used with 'diff'
  85. Bonus/ Additional useful .ADF dumps
  86. Demo/           unadf.c
  87. Possible bugs
  88. -------------
  89. - in dircache updates
  90. - when a volume is becoming full
  91. - lost memory releases
  92. Please report any bugs or mistakes in the documentation !
  93. Have fun anyway !