home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / DRI-archive / roche / DUMPASC.TXT < prev    next >
Internet Message Format  |  2009-12-11  |  7KB

  1. From: "Arobase, Salle multimΘdia" <arobase1.rochef...@wanadoo.fr>
  2. Newsgroups: comp.os.cpm
  3. Subject: DUMPASC Utility
  4. Date: Fri, 21 Dec 2001 01:08:40 +0100
  5. Organization: Wanadoo, l'internet avec France Telecom
  6. Lines: 152
  7. Message-ID: <9vve4i$577$1@wanadoo.fr>
  8. NNTP-Posting-Host: apoitiers-102-2-1-63.abo.wanadoo.fr
  9. X-Trace: wanadoo.fr 1008942034 5351 193.253.213.63 (21 Dec 2001 13:40:34 GMT)
  10. X-Complaints-To: abuse@wanadoo.fr
  11. NNTP-Posting-Date: 21 Dec 2001 13:40:34 GMT
  12. X-Priority: 3
  13. X-MSMail-Priority: Normal
  14. X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
  15. X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
  16.  
  17. Gasp! When leaving the cybercafe, I suddenly remembered
  18. that I had planned to "post" the following. I will be back in
  19. January.
  20.  
  21. (Charles, this text is in 80 columns mode because of the dumps...)
  22.  
  23. Merry Christmast, and
  24. a Happy New Year 2002!
  25.  
  26. Yours Sincerely,
  27. "French Luser"
  28.  
  29.  
  30. DUMPASC.TXT  by Emmanuel ROCHE
  31. -----------
  32.  
  33.  
  34.  In this memo, you will find a "silly little program" that I use very
  35. often under CP/M Plus. You have been given a disk with unknown programs (no
  36. doc, as usual) on it. What do you do? Personally, first I have a look to the
  37. messages to be found inside those files, to get a rough idea of what they do
  38. (if there is a message inside them, of course. I know of a few programs
  39. without any message, not even something like "DDT ver 1.4"!).
  40.  
  41.  So, we want to see the ASCII characters inside files. But which
  42. program would be the best at this job? DUMP version 1.4 and 2.0 displays
  43. only
  44. the hex values. DDT and SID display only 16 characters. ZAP is nice but its
  45. "type a file" option is for text, not COMmand files.
  46.  
  47.  Let us summarize what we want: we want a program, the simplest
  48. possible, for displaying the ASCII contents of files. ASCII characters are
  49. between 20H and 7EH (all other values should be represented by a "."). What
  50. is
  51. a file? A file is made of two parts: the directory entry, and the actual
  52. contents of the file, in records.
  53.  
  54.  Several cases can happen: there is not such a file in the directory,
  55. there is an entry in the directory but no records on the disk, there is a
  56. file
  57. in the directory and on the disk. Now, what kind of files are there under
  58. CP/M? Two kinds: COMmand files and other files. COMmand files always start
  59. at
  60. 0100H, other files may start at 0000H (this is true for PRL files, SPR
  61. files,
  62. etc).
  63.  
  64.  Armed with those specifications, off we go. The result of our efforts
  65. is shown below, thanks to CP/M Plus' PUT:
  66.  
  67.  
  68. M>dumpasc dummy.com    ; File not existing on drive M
  69.  
  70. File not found.        ; (^G = beep)
  71.  
  72. M>dumpasc empty.com    ; Entry in DIR, but empty file
  73.  
  74. No records exist (zero-length file).  ; Understood?
  75.  
  76. M>dump ascii.bin       ; Let see the ASCII characters
  77.  
  78. CP/M 3 DUMP - Version 3.0
  79. 0000: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F  ................
  80. 0010: 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F  ................
  81. 0020: 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F   !"#$%&'()*+,-./
  82. 0030: 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F  0123456789:;<=>?
  83. 0040: 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F  @ABCDEFGHIJKLMNO
  84. 0050: 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F  PQRSTUVWXYZ[\]^_
  85. 0060: 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F  `abcdefghijklmno
  86. 0070: 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F  pqrstuvwxyz{|}~.
  87. 0080: 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F  ................
  88. 0090: 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F  ................
  89. 00A0: A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF  ................
  90. 00B0: B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF  ................
  91. 00C0: C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF  ................
  92. 00D0: D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF  ................
  93. 00E0: E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF  ................
  94. 00F0: F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF  ................
  95.  
  96. M>dumpasc ascii.bin   ; Do we get the same output?
  97.  
  98. 0000: ................................ !"#$%&'()*+,-./0123456789:;<=>?
  99. 0040: @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~.
  100. 0080: ................................................................
  101. 00C0: ................................................................
  102.  
  103. M>dumpasc dumpasc.com   ; Let us see how long this little gem is...
  104.  
  105. 0100: ...DUMPASC by Emmanuel ROCHE!..9"..1...(....N..D........#.\....:
  106. 0140: }.....W........7.!e.~.C.n.#~.O.n.#~.M.n.!...q.!..>.2..........G}
  107. 0180: .?.............|...}...>:...> ...#x....v....*.......... ...>....
  108. 01C0: ................._.......>....>.............0....7..............
  109. 0200: .........:........5.....7._..<2..!...~...2|..\...........\......
  110. 0240: .......File not found.$...No records exist (zero-length file).$.
  111.  
  112.  Finally, here you will find its HEX file:
  113.  
  114. :10010000C31C0144554D5041534320627920456D35
  115. :100110006D616E75656C20524F4348452100003972
  116. :1001200022810231C302CD2802FEFFC24E011144DA
  117. :1001300002CD0302C3A9010E23115C00CD05003AD4
  118. :100140007D00FE00C0115702CD0302C3A901CD37C7
  119. :10015000012165007EFE43C26E01237EFE4FC26E0A
  120. :1001600001237EFE4DC26E01210001C371012100F9
  121. :10017000003E80327F02E5CD0902E1DAA901477D28
  122. :10018000E63FC2A101CDD901CDC0010FDAA9017CA2
  123. :10019000CDF6017DCDF6013E3ACDCC013E20CDCC51
  124. :1001A000012378CDB101C37601CDD9012A8102F9AD
  125. :1001B000C9FE7FD2BB01FE20D2BD013E2EC3CC01C1
  126. :1001C000E5D5C50E0BCD0500C1D1E1C9E5D5C50EFC
  127. :1001D000025FCD0500C1D1E1C93E0DCDCC013E0A83
  128. :1001E000CDCC01C9E60FFE0AD2F001C630C3F20140
  129. :1001F000C637CDCC01C9F50F0F0F0FCDE401F1CDFE
  130. :10020000E401C90E09CD0500C93A7F02FE80C21A79
  131. :1002100002CD3502B7CA1A0237C95F16003C327FD9
  132. :1002200002218000197EB7C9AF327C00115C000E3C
  133. :100230000FCD0500C9E5D5C5115C000E14CD050034
  134. :10024000C1D1E1C90D0A0746696C65206E6F742043
  135. :10025000666F756E642E240D0A074E6F20726563FB
  136. :100260006F72647320657869737420287A65726F81
  137. :0F0270002D6C656E6774682066696C65292E2495
  138. :00010000FF
  139.  
  140. Now that CP/M-86 Plus has been found, here is its 8086 version:
  141.  
  142. :0400000300000000F9
  143. :1B000081BB000003DC891E5901BC9B01E80B013CFF7520BA1C01E8D900E975B7
  144. :1B001B8100B123BA5C00CDE0A07D003C007401C3BA2F01E8C100EB5EE8E6FF78
  145. :1B003681BB65008A073C437513438A073C4F750C438A073C4D7505BB0001EB18
  146. :1B00518103BB0000B080A2570153E899005B72308AE88AC3243F751EE852006B
  147. :1B006C81E83700D0C8721E8AC7E861008AC3E85C00B03AE82F00B020E82A00A3
  148. :1B0087819F439E8AC5E80B00EBC9E82A00B100B200CDE03C7F73043C20730242
  149. :1B00A281B02EEB0B535251B10BCDE0595A5BC3535251B1028AD0CDE0595A5B00
  150. :1B00BD81C3B00DE8EEFFB00AE8E9FFC3240F3C0A73040430EB020437E8D9FFF9
  151. :1B00D881C39F86C45086C4D0C8D0C8D0C8D0C8E8DFFF5886C49EE8D8FFC3B1AD
  152. :1B00F38109CDE0C3A057013C807509E826000AC07402F9C38AD0B600FEC0A24C
  153. :1B010E815701BB800003DA8A070AC0C332C0A27C00BA5C00B10FCDE0C35352CC
  154. :0C01298151BA5C00B114CDE0595A5BC39F
  155. :1B01008244554D504153432D383620627920456D6D616E75656C20524F43481F
  156. :1B011B82450D0A0746696C65206E6F7420666F756E642E240D0A074E6F2072F8
  157. :1B01368265636F72647320657869737420287A65726F2D6C656E677468206622
  158. :06015182696C65292E2471
  159. :00000001FF
  160.  
  161. "I am a poor lonesome hacker,
  162.  and a long way from home..."
  163.  
  164.  
  165. EOF
  166.