home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / pcjr / sp_ss_21.lzh / SP_SS_21.PAT
Text File  |  1987-09-12  |  5KB  |  153 lines

  1. WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
  2.  
  3. Make the following patch AT YOUR OWN RISK.
  4.  
  5. Do NOT attempt to follow these instructions UNLESS
  6.  
  7.      1) You understand them; AND
  8.      2) You make the changes they call for using an EXTRA COPY of the
  9.         affected file, NOT the original or the only copy of the file
  10.         you have; AND
  11.      3) You check your typing SCRUPULOUSLY: AND
  12.      4) You test the patched file by booting your computer with it and
  13.         then running a variety of programs BEFORE you transfer the
  14.         patched version of the file to other disks.
  15.  
  16. The following instructions are intended to explain a patch in a DOS
  17. 2.1 system file.  The patch is designed to correct an error that rarely
  18. causes problems in most PCs but which can cause problems in the IBM
  19. PCjr
  20.  
  21. The problem involves the sequence in which the stack segment (SS) and
  22. stack pointer (SP) are set.  The proper sequence is SS first, then SP.
  23. But DOS 2.1 was released with some sequences in the SP:SS order.
  24. According to sources like Russ Davies ("COMPUTE!'S MAPPING THE IBM PC
  25. AND PCjr," ISBN 0-942-386-92-2, p. 52), this improper sequence leads to
  26. problems if any interrupt occurs between the first setting and the
  27. second--and the problems usually result in a crash that requires a
  28. power-off/power-on reboot.
  29.  
  30. To patch IBMDOS.COM in DOS 2.1 to fix the problem with the stack
  31. segment and stack pointer:
  32.  
  33. ------------------------------------------------------------------------
  34.  
  35. PREPARATION:
  36.  
  37. Take a blank disk and format it using the FORMAT [drive:] /S command.
  38. Then copy DEBUG.COM from the DOS program disk onto the newly-formatted
  39. disk.  This newly formatted disk is the one to use in making the patch.
  40. If you make a mistake as you enter the commands below, STOP, reboot
  41. using an old disk, and START OVER--that is, format the new disk again
  42. using the FORMAT [drive:] /S command, copy DEBUG.COM to it, and begin
  43. again.
  44.  
  45. ------------------------------------------------------------------------
  46.  
  47. Put the new disk in drive A.
  48.  
  49. Type in the numerals that appear below as well as the LETTERS that
  50. appear in capitals (except, of course, for the A>prompts!).
  51.  
  52. Once you begin the DEBUG program (and this patch calls for you to begin
  53. and end it three times), the standard prompt will be a hyphen (-).
  54.  
  55. Hit a carriage return at the end of each line and wherever <enter>
  56. appears.  DON'T enter the comments that appear between <marks>.
  57.  
  58.  
  59. A>DEBUG               <this first step unhides the ibmdos.com file:>
  60. -L 100 0 5 1
  61. -D 12B L 4
  62. -E 12B                <this instruction changes 27 (which will appear
  63.          .20                before the period) to 20>
  64. -W 100 0 5 1          <this writes the change onto the disk>
  65. -Q                    <this ends the first step (quits)>
  66.  
  67.  
  68.  
  69.  
  70. ------------------------------------------------------------------------
  71.  
  72. (check to see that IBMDOS.COM is unhidden by using the DIR command)
  73.  
  74. ------------------------------------------------------------------------
  75.  
  76. The next step is making the patch itself.
  77.  
  78. A>DEBUG IBMDOS.COM
  79. -U3AC L A            <this will display part of the file to be changed>
  80. -A3AC
  81.          CS:MOV SS,[02A8]     <this makes
  82.          CS:MOV SP,[02A6]           the changes>
  83.          <enter>
  84. -UCD1 L A            <this will display another part of the file>
  85. -ACD1
  86.          CS:MOV SS,[02D3]     <this makes
  87.          CS:MOV SP,[02D1]           the changes>
  88.          <enter>
  89. -U1522 L A
  90. -A1522
  91.          CS:MOV SS,[02D3]
  92.          CS:MOV SP,[02D1]
  93.          <enter>
  94. -U311D L 8
  95. -A311D
  96.          MOV SS,[02D3]
  97.          MOV SP,[02D1]
  98.          <enter>
  99. -U325F L 4
  100. -A325F
  101.          MOV BP,ES
  102.          MOV SS,BP
  103.          <enter>
  104. -U490B L 7
  105. -A490B
  106.          MOV AX,CS
  107.          MOV SS,AX
  108.          MOV SP,4235
  109.          <enter>
  110. -W                   <this writes the new version of the file to disk>
  111. -Q                   <this ends (quits)>
  112.  
  113. ------------------------------------------------------------------------
  114.  
  115. The next step hides the file again.
  116.  
  117. A>DEBUG
  118. -L 100 0 5 1
  119. -D 12B L 4
  120. -E 12B
  121.            .27          <changes the 20 back to 27>
  122. -W 100 0 5 1
  123. -Q
  124.  
  125. -------------------------------------------------------------------------
  126.  
  127. Use the DIR command to be sure that the file has been hidden.
  128.  
  129. Then reboot using Ctrl-Alt-Del or power-off/power-on.  Check to see
  130. that DOS loads properly and that you get a regular prompt.
  131.  
  132.  
  133. Run a variety of programs without rebooting (or after booting up each
  134. time using the test disk).  If you experience no problems, copy the new
  135.  
  136. IBMDOS.COM to other disks that already have the old version.
  137.  
  138. To transfer the system files to other disks that already have the old
  139. version,
  140.  
  141.      Copy SYS.COM from the DOS program disk to the new test disk.
  142.  
  143.      Put the new test disk in drive A.  Put the disk to which you want
  144.      to transfer the new system files in drive B.  Then use the command
  145.  
  146.      A>SYS B:
  147.  
  148. (if you're using a PCjr with one drive, put the new test disk in the
  149. drive and use the same command; then put the disk to which you want
  150. to transfer the new system files in the drive when you're prompted to
  151. insert the disk for "drive B."  You'll be prompted to swap the two
  152. disks a couple of times before the transfer process is compleated)
  153.