home *** CD-ROM | disk | FTP | other *** search
/ Old Hackers Atari User Group Newsletter / Old_Hackers_Atari_User_Group_Newsletter_OHND95B.atr / bdirhead.txt < prev    next >
Text File  |  2023-02-26  |  7KB  |  1 lines

  1.                *=*=*=*¢ THE DISK DIRECTORY HEADER  Version II¢ =====================================¢       by John Foskett, September 1993¢ "DIRHEAD2.BAS" IS ON THIS OL' HACKERS¢ Nov./Dec. 1995 NEWSLETTER"¢¢ A USER FRIENDLY HEADER¢¢     By   reading   the   directory  of¢ commercial disks it can be  seen  that¢ in many cases the directory contains a¢ header   of   some  form  giving  some¢ details like a title,  version,  date,¢ etc. Such a header could be written to¢ a newly formatted disk by using a disk¢ sector  editor   but   this   can   be¢ confusing and time consuming, since it¢ must always be remembered how  a  disk¢ stores  its data. In order to overcome¢ these problems in a user friendly way,¢ "The Disk Directory Header" was born.¢¢ WHAT CAN IT DO?¢¢    The  Disk  Directory   Header   can¢ create  a  header  consisting  of upto¢ eight lines,  completely  filling  the¢ first  directory  sector  if  required¢ where  each  line  can consist of upto¢ eleven  characters,  the  normal  file¢ name length. The Disk Directory Header¢ provides  nine  standard headers which¢ can be selected from the main menu  as¢ well  as  a  way  of creating a custom¢ designed header.¢¢ THE SCREEN¢¢     The  top  section  of  the  screen¢ comprises of the  title.  The  central¢ and  the  lower  sections comprise the¢ main working part of the screen.¢¢ USING THE DIRECTORY HEADER¢¢    When The Disk Directory  Header  is¢ first run, the centre section contains¢ a menu and a prompt. To select one  of¢ the  nine  standard headers, press the¢ appropriate number key, the menu  will¢ be  erased  and  the   chosen   header¢ printed  in its place on the left side¢ of the screen. If  the  chosen  header¢ requires  a  date  then  this  will be¢ requested  before  prompting  for  the¢ formatting details.¢¢ A REMINDER¢¢    As a part of  the  main  menu,  the¢ bottom  line  of the screen contains a¢ small two option menu, as a  reminder,¢ that  at any time START can be used to¢ cycle through the  background  colours¢ whilst  SELECT  is  used  to reset the¢ colour  back  to  blue.  If  a  custom¢ designed header is selected  from  the¢ menu, the menu is again erased and the¢ necessary details  printed  to  enable¢ its  construction.  As  each  line  is¢ entered,  it  is printed to the screen¢ and a menu is displayed on the  bottom¢ line. Select "N" to continue and enter¢ the next line, "P" to exit  early  and¢ to  prepare the disk or ESCAPE to exit¢ back to  the  menu.  If  and  when  an¢ eighth    line    is    entered,   the¢ 'N/P/ESCAPE'   menu  is  bypassed  and¢ control  is  passed  directly  to  the¢ 'Prepare disk' section.¢¢ PREPARE DISK¢¢    This section  is  entered  after  a¢ header   is   completed   and   RETURN¢ pressed, ESCAPE will exit back to  the¢ menu. Prepare disk allows a disk to be¢ first formatted in  either  single  or¢ enhanced density, ESCAPE again is used¢ to exit.  "S"  is  pressed  to  select¢ single  density  or "E" is pressed for¢ enhanced   density.  After  selecting,¢ 'CAUTION'   is   displayed  on  screen¢ requiring   "Y"   to   be  pressed  to¢ continue. Any other  key  will  return¢ back  to  the previous stage to select¢ the format density.¢¢    Upon pressing "Y", the  disk  which¢ is  currently in drive #1 is formatted¢ and   the   header  written  into  the¢ directory.   After   this,  the  disks¢ directory is read and printed  to  the¢ right  hand  side  of  the  screen  to¢ confirm its presence.¢¢    Once  the  header  has been written¢ and   the   directory  displayed,  the¢ option to write the  DOS.SYS  file  is¢ given.    Upon   pressing   "Y",   the¢ directory display on screen is  erased¢ and  the  DOS.SYS  file written to the¢ disk and locked. The  disks  directory¢ is    then   once   again   read   and¢ displayed.¢¢ ANOTHER DISK?¢¢     Regardless   whether  or  not  the¢ DOS.SYS file has been written  to  the¢ disk,  the  option  to prepare another¢ disk   with   the   same   header   is¢ presented. Pressing "Y" will allow the¢ format density for  this  disk  to  be¢ selected. Any other key will exit back¢ to the menu.¢¢ MODIFYING THE STANDARD HEADERS¢¢     Naturally  the  standard  built-in¢ headers will need  to  be  amended  to¢ incorporate the users name rather than¢ my own name. The standard headers  are¢ stored  at  the  end of the listing in¢ the form of basic DATA. When modifying¢ the  headers,  the  single line format¢ must be maintained due to the way that¢ the  program   selects   the   various¢ headers.  Each  set  of  header   DATA¢ terminates  with  the  '@'   character¢ which  is  most  probably  the   least¢ likely  character   required   for   a¢ header.  It  can be used within a line¢ of characters but  must  not  be  used¢ alone.  The limitation of a maximum of¢ eight lines where each line  comprises¢ of a maximum of eleven characters must¢ also  be  maintained.  The  main  menu¢ should also be modified to reflect the¢ changes  made.   If  a modified header¢ needs a date, then its  position  must¢ be  considered so that the details can¢ be printed within the header on screen¢ and  for inclusion into the string for¢ writing   into   the  first  directory¢ sector of the disk. For this reason it¢ may prove more convenient to leave the¢ date  position  where  it  is  and  to¢ simply modify the header around it.¢¢ TECHNICAL DETAILS¢¢    A VBI routine is  used  to  control¢ the  background  colour  cycling,   to¢ disable  the  attract  mode   and   to¢ disable   the   CONTROL-1   stop-start¢ toggle. It also provides  an  optional¢ keyboard  lock to ensure that only the¢ normal uppercase character  set  ascii¢ codes  can be used when selecting from¢ the   menus.  This  part  of  the  VBI¢ cancels any  accidental  operation  of¢ the  respective two keys. The keyboard¢ lock   is  disabled  when  the  custom¢ designed header is selected to  enable¢ the  use  of all characters.  All text¢ erasing is achieved by using a machine¢ code routine which defaults to erasing¢ the lower section of the screen  only,¢ unless  otherwise  set up.  The cursor¢ used within the data entry section  is¢ 'player  zero',  its  colour  is  also¢ controlled by the VBI according to the¢ background  colour.  A  small  machine¢ code routine is used  to  ensure  that¢ the player zero stripe is clear before¢ the cursor is defined.¢¢ MACHINE CODE¢¢    A small  machine  code  routine  is¢ used  to  access the internal routines¢ enabling data to  be  written  to  the¢ disk.¢¢ CUSTOM DISPLAY LIST¢¢    A  custom  display list enables the¢ use of a mixed mode text screen.¢¢ The above stated machine code routines¢ are  stored in the form of relocatable¢ machine code strings. The display list¢ is  also  stored  as   a   relocatable¢ string.  The  strings  being  directly¢ defined to eliminate initialising time¢ caused by the loading of data.¢¢              **=**==**¢