OS9_FirstStep.txt

(7 KB) Pobierz





                              OS9 - The First Step
                                   for CoCo3

      The main problem with OS9 as issued by Tandy is their stupid
     insistance on adhering to the CoCo 'standard' of 35 track, single
     sided drives and VDG (very dumb green) 32 column video. Fixing it is a
     little bit of a pain; you'll need 3 blank disks and an hour of work.
     At least it only has to be done once!  After enduring this procedure,
     your CoCo should boot to 2 80 column windows in RGB mode, with 2 (or
     3) 40 track double sided drives @ 6ms step rate, with your choice of
     serial port and printer baud rates.

      Make a copy of the basic09 disk using backup (you can even do this
     from DECB [Disk Extended Color Basic] if you want), then put the new
     disk in drive 1, and the system master in drive 0. Type:

      chx /d0/cmds;chd /d1/modules;edit bootlist

     [when you see "type:", you always press "ENTER" at the end of a line.]

      Bootlist is just that, a list of the modules to be used when making a
     custom version of OS9Boot. Since the version Tandy included is pretty
     lame, we are going to change it with edit to use 40 track drives and
     the windowing system.  Since you entered "edit bootlist" you should
     now be seeing E:, the edit prompt. Type:

      c*/35s.dd/40d.dd/    [c* = change all occurances]
      c/vdg.dt/win.dt/
      q

      Q saves the changes and returns to OS9: prompt. Now to load some
     stuff into RAM to free up the drive the system disk is in, type:

      load format;load os9gen

      Remove the system disk from drive 0 and insert a blank one in it's
     place.  Type:

      format /d0

      When the formatting is done, type:

      os9gen /d0 </d1/modules/bootlist  [makes OS9Boot using bootlist]

      Now, remove the BASIC09 backup disk from drive 1 and replace it with
     the System Disk! Type:

      chd /d1; chx /d1/cmds; dsave /d1 /d0 ! shell [copies rest of disk]

      We have to use dsave here because backup would clobber the new boot
     just made. This is a good time to take a coffee break. Dsave will take
     something like 5 minutes to copy the entire system disk file by file.

      That's version 1 - a 40 track capable boot stuck on a 35 track disk.

                                      -1-










     Press reset once to reboot the system. It should come up in a 40
     column term screen.

      Now there are a few more things to change before making version 2 -
     the true 40 track boot disk. First to change term to 80 columns and
     set the 6ms stepping rate for the disk drives. To do this, we'll use
     modpatch.

      Modpatch uses a file that lists the changes to be made. To create
     this file, we'll use edit again. Type the following - (Note each line
     between edit and q starts with a space).

      edit patch
       l term
       c 002c 28 50
       c 0030 01 02
       v
       l d0
       c 14 00 03
       v
       l d1
       c 14 00 03
       v
      q

     Now type:

      modpatch patch

      There are a few last changes - permanently setting printer and modem
     baud rates. In the following lines, replace # with 3 for 1200, 4 for
     2400, 5 for 4800, 6 for 9600, or 7 for 19.2K baud.

     xmode /t2 baud=#      [makes changes
     xmode /p baud=#        in memory]

      Now everything is set up in RAM. All thats left is to save the final
     version to disk. Format one last blank disk in drive 1. This time it
     should verify all they way to 4F and probably show $5A0 sectors,
     signifying a 40 track double sided disk.

      cobbler /d1   [transfers OS9Boot from memory]
      chd /d0
      dsave /d0 /d1 ! shell  [rest of disk]

      When dsave gets done, reboot with the new disk. This disk has more
     than twice the room the old one did; so the Basic09 stuff will fit on
     it.  Copy it over as follows.

     Assuming new Master in /d0, Basic09 in /d1, type:

      chd /d1/cmds
      copy Basic09 /d0/cmds/Basic09
      copy Runb /d0/cmds/Runb

                                      -2-










      copy gfx2 /d0/cmds/gfx2
      copy inkey /d0/cmds/inkey
      copy syscall /d0/cmds/syscall
 
      You'll note I didn't include gfx- it's only for CoCo1/2 compatable
     Basic programs.

      One last thing you'll like is a second window started automatically.
     (And I guess RGB mode would be nice [assuming you are using an RGB
     monitor]). Once again, time to edit! (Assumes Master in /d0) Type:

     chd /d0
     edit startup
     +*
      montype r
      iniz /w7
      shell i=/w7&
     q

      (Finally) Done!

       P.S. No attempt was made to explain what every line given above
     does, since a reasonable explanation would swell this file to
     unmanageable size. The idea was to just get the job done, and figure
     it out later.



      This last section is a selection of common problems:

      OS9 has the equivalent of two DRIVE(x) commands- chd and chx. The
     first points to current data directory and the second to current
     execution dir (usually a CMDS dir).

      They are a little more complex than DRIVE(x), due to the directory
     tree system used by OS9. Not only do you have to repoint to use a
     different drive, but also when using a different disk in the same
     drive, since its directories may be in a different place on the disk.
     A 216 or 214 often means you forgotten to do a chx or chd.

      To avoid the need to chx or chd all the time, you can use a full
     pathlist to get a file. Say you're pointed to a disk in drive 1, and
     need to run something off of the system disk in drive 0.
     /d0/CMDS/something will find it.

      Another reason for a 214 error is that the file execution attributes
     are not set- you'll notice practically everything in the os9 sig is an
     .ar file. When you burst these files with Ar, it doesn't always set
     the execute attributes, so the file won't run. Use "attr filename e
     pe" to make it runable.

      OS9 doesn't have an llist command, instead you have to redirect to
     the printer. list file >/p will do that. Most commands may be
     redirected. To get a printed directory dir >/p. And so on. If you have

                                      -3-










     a long file to print, you can do it in the background by adding an
     ampersand:

     list file >/p&

      One other neat redirection - if you are in conference and want to
     show somebody your module directory (or whatever), clear key to
     another window and redirect to /t2, as in:  mdir >/t2. It will look a
     little goofy on your end, but everyone else sees a pretty formatted
     mdir.

      Something apparently missing is CLS. It's not really missing, just
     hidden. Use display c.

      Many of the 3rd-party utilities contain a built in help file. To see
     it, type:

     utilityname -?

      Printing these help files often stumps folks, since they are output
     on the error path.

     Use  utilityname -? >>/p if the normal method doesn't work.

      Starting another window isn't that difficult. To form a full screen
     80 column window with a shell in it, type:

      iniz /w#
      display 1b 20 02 0 0 50 18 1 0 0 >/w#
      shell i=/w#&

     Where # is the window you want to start (notice we've already used 7),
     and the last 3 numbers in the display command(1 0 0) are
     foreground,background,border color. These are hex numbers, so 50 18 is
     80x24. There is a utility (wcreate) that uses decimal numbers, but
     display is faster, since it's always in ram.


                                         Best of luck:-)
                                             -Ricku















Zgłoś jeśli naruszono regulamin