home *** CD-ROM | disk | FTP | other *** search
/ Aminet 10 / aminetcdnumber101996.iso / Aminet / misc / emu / Emul1541v11.lha / emul_1541 / Emul_1541.doc < prev    next >
Text File  |  1995-11-26  |  10KB  |  239 lines

  1. Emul_1541  V1.1      by Philippe DEPRUGNEY  1995
  2.  
  3.  
  4. SHORT:
  5. ------
  6.      A program that allows you to plug a C64 computer to your parallel port, 
  7. so that you can use your Amiga as a disk drive for the C64, emulating the old 
  8. 1541 drive.
  9.  
  10.  
  11. WHAT'S THE USE ??!?
  12. -------------------
  13.      Well, Emul_1541 may be useful to people who have a C64 with a broken 
  14. 1541. Or to nostalgic C64philes that consider buying an old C64 but cannot 
  15. find a 1541. Or to guys like me who are not too fond of floppy disks.
  16.  
  17.  
  18. WHAT'S NEW
  19. ----------
  20.      - Isepic files support (faaaast)
  21.      - a printed circuit board schematic of the hardware interface
  22.  
  23.  
  24. REQUIREMENTS:
  25. -------------
  26.      - an interface that plugs to your parallel port (more on this later)
  27.      - an Amiga with Kickstart v 2.0+. Any processor should do.
  28.      - a C64 or a C128
  29.      - an IEC cable (standard C64 <-> 1541 cable)
  30.  
  31.  
  32. USAGE:
  33. ------
  34.      Emul_1541 [drive number]
  35.           where [drive number] is 8...11 (default is 8)
  36.  
  37.  
  38. OPERATION:
  39. ----------
  40.      Open a Shell and execute 'Emul_1541'. If the parallel port is free and 
  41. the interface is plugged in, you can now execute the following commands from 
  42. the C64:
  43.           -LOAD "<program>",8 (or ",8,1"). 
  44.           -LOAD "$",8. This will load the listing of the current directory 
  45. into the C64.
  46.           -SAVE "<program>",8 . Speaks for itself.
  47.           -LOAD "CD <directory>". This allows you to change the current 
  48. directory of the emulator . It will also transfer the listing of the new 
  49. directory into the C64.
  50.           -you can exit Emul_1541 by typing CTRL C in its window
  51.           - if you want Emul_1541 to temporarily stop listening to the C64 
  52. serial port, type CTRL D in its window and the program will "sleep" until you 
  53. wake it up with another CTRL D or you kill it with a CTRL C. The reason for 
  54. that option is that, ahem, Emul_1541 does not understand (YET) all the 
  55. commands the C64 may send him, which sometimes causes the emulator to 
  56. "freeze". So if you have just loaded a program into the C64 and you're afraid 
  57. that during its execution it may send odd drive commands to Emul_1541, just 
  58. disable Emul_1541 with CTRL D. This should also be useful to C128 owners, 
  59. whose RESET takes too much time for Emul_1541 (maximum allowed: 0.4s).
  60.  
  61.  
  62. MISCELLANEOUS:
  63. --------------
  64.      *** Abbreviations are allowed (LOAD "prog*",8 or even LOAD "prog#?",8).
  65.      The same goes for the LOAD "CD <directo*>",8 command.
  66.  
  67.      *** special characters:
  68.      The '_' Amiga character has a rough equivalent on the C64, which can be 
  69. typed using 'SHIFT R'.
  70.      The '\' Amiga character stands for the '/' C64 character.
  71.      Ex: LOAD "/TURBO_TAPE",8 will start the transfer of '\turbo_tape'
  72.      However, you can still type LOAD "CD /" to change the directory to the 
  73. parent of the current one.
  74.  
  75.      *** If you type LOAD "<program>",8, 'Emul_1541' will search for 
  76. <program> in the current directory, and if it can't find it there, it will 
  77. search for it in 'C64:'. You can use this feature to assign 'C64:' to a 
  78. directory where you would store the C64 programs you most frequently use.
  79.      You can also type the full path name of the file you want.
  80. Ex: LOAD "DH1:C64_GAMES/CHOPLIFTER",8
  81.  
  82.      *** program names are not limited to 16 characters as they are on a 
  83. 1541 drive. Therefore, you can type 'LOAD "<program>",8' with <program> 
  84. having a name longer than 16 characters, and Emul_1541 will transfer it 
  85. correctly. However, if you type 'LOAD "$",8', <program> will have its name 
  86. truncated to 16 characters in the directory listing.
  87.  
  88.      *** when a directory is created, program sizes and free space are 
  89. displayed in blocks, which are worth 254 bytes (on a C64). Due to 16-bit 
  90. limitations, the biggest size displayable is 254*65535 = 15.9 Mb. Therefore, 
  91. any file or directory free space bigger than 15.9 Mb will not have their size 
  92. displayed correctly.
  93.  
  94.  
  95. ABOUT THE HARDWARE INTERFACE
  96. ----------------------------
  97.      Included in this package, you will find three files:
  98.      - 'Interface.IFF', a functional schematic of the interface
  99.  
  100.      - 'Interface_PCB.Postscript' is a schematic of the printed circuit 
  101. board, in Postscript format. You should print it on a transparent sheet (like 
  102. the ones used with overhead projectors). I created and printed this layout 
  103. using Art Of Expression. For some reason, Pro Page and Final Writer have 
  104. problems with that layout: they print it without the text annotations, which 
  105. does not make it unusable, but still...
  106.      If you use a laser printer, make sure the transparent sheet you're 
  107. using is photocopy-resistant, or it will melt inside your printer.
  108.  
  109.      - 'Components_placement.IFF' will show you how to solder the components 
  110. to the PCB.
  111.  
  112. Components list:
  113.      - 1 kohm resistor (x3)
  114.      - a male DSUB DB25 connector, PCB version (that is, not one that can be 
  115. soldered at the end of a cable)
  116.      - a female 6-pin DIN connector, PCB version
  117.      - integrated circuit: 7406
  118.      - a 2-circuit switch (optional)
  119.  
  120.      You will notice the presence of four connection plots, labeled A, B, C 
  121. and D. There are two ways to wire them:
  122.  
  123.      - if you just want to use the interface with Emul_1541, you should 
  124. connect plot A to plot C and plot B to plot D. You do not need the switch.
  125.  
  126.      - if you also want to be able to use this interface with Amiga programs 
  127. that "talk" to a real 1541 drive (like Frodo, etc), you should wire plots A, 
  128. B, C and D to a 2-circuit switch, the way it is shown in 
  129. 'Components_placement.IFF'. Depending on the position of the switch, you will 
  130. be able to connect this interface to a C64 or a 1541.
  131.  
  132.  
  133. TECHNICAL NOTES:
  134. ----------------
  135.      *** this program does not multitask while communicating with the C64. 
  136. That is because the C64 expects the 1541 to "listen" to its signals all the 
  137. time. Therefore, if the emulator was interrupted for more than 20µs, it would 
  138. miss some changes of states of the communication signals.
  139.  
  140.      *** 'Emul_1541' uses the timer B of CIA B, which is used by many 
  141. time-sensitive programs, such as music players, emulators and some games. 
  142. Therefore, you should not run any program of that kind at the same time as my 
  143. emulator. Anyway, 'Emul_1541' will warn you if that timer is already 
  144. allocated, and will only take possession of it during transfers, not when it 
  145. is idle.
  146.  
  147.      *** As the Amiga clock is not updated during transfers, 'Emul_1541' 
  148. executes a routine equivalent to 'SetClock LOAD' after every communication 
  149. with the C64. I can only hope that this does not cause any problem on an 
  150. Amiga without a clock, as I could not test that.
  151.  
  152.      *** I have tried to make 'Emul_1541' compatible with real 1541 drives. 
  153. That is, you can daisy-chain the parallel port interface with a 1541 drive, 
  154. provided their device numbers are different, and the C64 will be able to 
  155. access both drives. Note that multitasking will also be disabled while the 
  156. C64 is accessing the real 1541 drive.
  157.  
  158.      *** Sometimes 'Emul_1541' will freeze during a communication sequence 
  159. with the C64, because the C64 has sent an unknown command to the emulator. 
  160. You can usually get out of that situation by pressing your C64 reset button a 
  161. few times. If you do not have a reset button on your C64, I strongly advise 
  162. you to install one.
  163.  
  164.      *** Wild star ('*') is allowed during the execution of 'Emul_1541', and 
  165. is restored to its prior state (that is, allowed / not allowed) after the 
  166. emulator has exited.
  167.  
  168.  
  169. WHAT 'EMUL_1541' CANNOT DO:
  170. --------------------------
  171.      *** communicate with fast-loaders: no way, except for Isepic. If you 
  172. have got a FastLoad cartridge, disable it. Games saved with the Freeze Frame 
  173. cartridge will not work. The same goes for any program that uses a loading 
  174. technique different from the standard one.
  175.  
  176.      *** support commands such as 'VERIFY...' or 'OPEN 1,8,15,"..."'
  177.  
  178.      *** reverse entropy
  179.  
  180.  
  181. THANKS TO:
  182. ----------
  183.      - Cliff DUGAN, whose A64 gave me the inspiration for this
  184.      - Peter STUER, for DosTrace
  185.      - Morten ERIKSEN, for Dis6502
  186.      - Laurent CLéVY, for being a good friend
  187.  and among the legions of guys who wrote to me for support:
  188.      - Mattias PIHLSTRöM
  189.      - Enriko GROEN
  190.  
  191.  
  192. TESTED ON:
  193. ----------
  194.      - A4000/30 with 8Mb FAST RAM, with Kickstart v. 39 and v.37 (using 
  195. SKick)
  196.      - CD 32 (just joking)
  197.  
  198.  
  199. BUGS:
  200. -----
  201.      Should you find any, I would like to hear about them. So please send me 
  202. a short description of the problem and of your configuration. A picture of 
  203. your girlfriend wearing outrageous underwear would be much appreciated too.
  204.  
  205.  
  206. TO DO:
  207. ------
  208.      - Freeze Frame files support
  209.      - '.d64' files support
  210.      - FastLoad cartridge support
  211.  
  212.  
  213. LEGAL JU-JU
  214. -----------
  215.      Emul_1541 is (C) 1995 by Philippe DEPRUGNEY.
  216.      This program may be freely distributed, provided the archive and its 
  217. contents are not modified in any way. It may be included in any public domain 
  218. collection.
  219.      This program is also POSTCARDWARE, which means it would be very nice of 
  220. you to send me a postcard if you use it. You may also take advantage of that 
  221. opportunity to tell me what you like and do not like about Emul_1541, and 
  222. what features you would like me to add to it. Right now, it seems what people 
  223. are most interested in is FastLoad support, so I guess that's what I will 
  224. tackle next.
  225.      Anybody who wants to swap C64 programs (demos, games...) is welcome to 
  226. write to me too.
  227.  
  228.  
  229. ABOUT THE AUTHOR:
  230. -----------------
  231.      You can join me at the following address, which is my parents', so it 
  232. should be valid for a good many years (sorry, I have no access to Internet; I 
  233. know, I should be ashamed):
  234.           Philippe DEPRUGNEY
  235.           20, rue domaine du Château
  236.           64230 LESCAR
  237.           FRANCE
  238.  
  239.