--- ABOUT THIS ARCHIVE Included in this archive, are a number of executable and source code files to use the Dallas Semiconductor 'DS1216E' as a ProDOS8 clock. This part is commonly called the 'No-Slot-Clock' due to advertising by SMT Inc. The files in the root directory of this archive are: SWU.SYSTEM (a utility to start and reset the DS1216E) SWU.SRC (a directory containing the source to SWU.SYSTEM) P8.PATCH (a directory containing the source and executable to the ProDOS8 (executable assembled @ $5E80) ) SETUPS (a directory containing the source and executables for Sean Nolans 'SETUP.SYSTEM' program. A nice way to auto run 'BIN' and 'SYS' files on startup.) INSTRUCTIONS (this file) DISTRIBUTORS (a text file listing Dallas Semiconductor in North America (name, city and phone numbers only)) --- ABOUT EACH FILE - SWU.SYSTEM is a self-contained utility program that is used to start and set the date/time in an installed DS1216E. This program does not require any particular version of ProDOS8 and does not use the ProDOS MLI call 'GET_TIME'. This program makes direct call to the DS1216E using selected address in the $C300 page. This memory page was selected due to its constant availability in Apple //e's and Apple //c's. SWU.SYSTEM makes a check to see that it is running on an Apple //e or Apple //c, and will report an error and request to quit if it is not. This check is made, because the DS1216E is a 28-pin device and will only fit under Apple //e or Apple //c ROMs. If you wish to install a DS1216E on an Apple ][ or ][plus, (and you have a slot card that can handle a 28-pin ROM), you will need patch SWU.SYSTEM to disable this check, and modify P8.PATCH to look in the new slot. SWU.SYSTEM's is rather intellegent. Only the part of the prompt that needs to be modified, need be modified. Use the left and right arrow-keys to by-pass parts that do not need to be modified (like jumping to the hour section to adjust the clock for daylight-savings time). SWU.SYSTEM also recognizes erronous dates/times and displays a default entry prompt of: DAY DD-MMM-YY HH:MM:SS where DAY stands for the three letter abreviation for day of the week, DD stands for a numeric 'day of the month', MMM stands for the three letter abreviation for the month. YY is the last two digits of the year, HH stands for the hour in 24 hour format (00-23), MM is minutes (00-59), and SS is seconds(00-59). - SWU.SRC is a directory containing the ORCA Assembler source code for SWU.SYSTEM. - P8.PATCH is a directory containing the ORCA Assembler source code for the ProDOS8 patch, and a sample of the P8.PATCH assembled at $5E80. The P8.PATCH is very careful about overwriting any other ACTIVE clock driver. If the P8.PATCH detects an active clock driver, or cannot detect an installed DS1216E, it will not install its own driver. This means that a P8.PATCH version of ProDOS8 can be used on other machines without fear of ill-effects. If used on a //gs or clock equiped //e, it will not overwrite the installed drivers for these clocks, or install a drive on a system that has no clock at all. Patching ProDOS8 to read the DS1216E is quite simple. First assemble P8.PATCH to reside just above the PRODOS file image when loaded into memory at $2000 (i.e.: BLOAD PRODOS, TSYS, A$2000). The address of $5E80 is currently above all versions of ProDOS8, without wasting to much disk space. The largest PRODOS file image is for version 1.8. Which, when BLOAD'ed resides from $2000 to $5D7D. Next 'BLOAD PRODOS, TSYS, A$2000'. With the PRODOS file image loaded into memory, 'BLOAD P8.PATCH, A$5E80'. With both images in memory, we now must tell PRODOS to run the new code on startup. The best time to do that is after PRODOS has done all its initial- ization, and before it searchs for the first '.SYSTEM' file. Since PRODOS always moves its '.SYSTEM' file search code to $0800, and then jumps to it, P8.PATCH is written to be an intercept for this jump (it is written to execute and then jumps to $0800). Below is a list of the 'JMP $0800' codes for all ProDOS8 file images so far. Simply change the 'JMP $0800' to JuMP to the starting address of the assembled P8.PATCH ($5E80) and BSAVE the entire section of memory containing PRODOS and P8.PATCH (BSAVE PRODOS, TSYS, A$2000, E$5FFF) Version Address From To ------- ------- -------- -------- 1.1.1 $21C0 4C 00 08 4C 80 5E 1.2 $2224 4C 00 08 4C 80 5E 1.3 $2224 4C 00 08 4C 80 5E 1.4 $2224 4C 00 08 4C 80 5E 1.5 (unknown) 1.6 $2227 4C 00 08 4C 80 5E 1.7 $2227 4C 00 08 4C 80 5E 1.8 $2232 4C 00 08 4C 80 5E [In recap, do the following: BLOAD PRODOS, TSYS, A$2000 BLOAD P8.PATCH.5E80, A$5E80 >using the monitor locate and change the JMP $0800 address to $5E80 BSAVE PRODOS, TSYS, A$2000, E$5FFF ] - SETUPS is a directory containing Sean Nolans' 'SETUP.SYSTEM' program and source. This '.SYSTEM' is a nice utility to execute BIN and SYS programs on bootup. BIN and SYS programs such as self-installing clock and ram disk drivers. Also include in this directory is a version of P8.PATCH called 'SWSETUP', which executes as a self-installing clock driver. - INFORMATION is this file, and contains information about all other files, and information on how to patch ProDOS8 to read the DS1216E. - DISTRIBUTORS is a text file contiaing the list of North America distrib- utors for Dallas Semiconductiors, as published in their 1988 DATABOOK.