date : 16-JUN-82 file : /dsgn/bootfiles.text info from volume CCSYS on concept room network as of June 9. OS version V 0.0f (beta96) Files needed on disk used for Sysgen boot : (volume name : CCSYS) - must write boot blocks onto this floppy's blocks 0 and 1. Use WFLOPBOOT program on Apple, which needs file BOOTCODE.DATA. no. | file name | blocks 1) ASSIGN 9 2) CC.DISPAT 16 3) CC.FILMGR 31 4) CC.KERNEL 56 5) CC.SETUP 24 6) CC.WNDMGR 27 7) DRV.CONSOL 2 8) DRV.DISPHZ 8 name next week of DRV.DISPUD 9) DRV.DISPVT 8 10) DRV.KYBD 5 11) DRV.SYSTRM 5 12) DRV.TIMER 3 must be new timer driver w/ clock changes 13) CSK.DEFAULT 2 must be for revision 3 keyboard 14) CSH.DEFAULT 4 name next week of CSU.DEFAULT 15) CSV.DEFAULT 4 --- TOTAL........... 205 blocks fits on one 280 block 5 1/4" Apple drive floppy. Files on seperate Sysgen disk: (volume name : CCSYS) 1) the Sysgen program 2) program to write firmware onto the hard disk. 3) data files for both programs, if any. Files needed on CCSYS image on floppies used by Sysgen program : no. | file name | blocks 1) ASSIGN 9 2) CC.DISPAT 16 3) CC.FILMGR 31 4) CC.HELP 7 5) CC.KERNEL 56 6) CC.SETPRT 16 5) CC.SETUP 24 7) CC.SYSMGR 16 8) CC.WNDMGR 27 9) SHELL 12 10) WRITEBOOT 5 11) DRV.CONSOL 2 12) DRV.DISPUD 8 13) DRV.DISPVT 8 14) DRV.KYBD 5 15) DRV.PRNTR 3 16) DRV.SYSTRM 5 17) DRV.TIMER 3 must be new timer driver w/ clock changes 18) CSK.DEFAULT 2 must be for revision 3 keyboard 19) CSH.DEFAULT 4 name next week of CSU.DEFAULT 20) CSH.ALTCHARSET 13 must get reworked char set from Mike 21) CSV.DEFAULT 4 22) H.DISPAT.TEXT 4 23) H.FILMGR.TEXT 4 24) H.SYSMGR.TEXT 4 25) H.WNDMGR.TEXT 4 26) CC.EDCHAR 28 must be Mary's latest and best 27) OTEST 41 ---- TOTAL........... 361 Each floppy in image set has it's first block (block 0) dedicated to Sysgen useage. It does not have CCSYS image on it. Control info for Sysgen process is get there. It has the following structure and meaning : 1) Date - 6 bytes of ASCII representing the date the image floppies were made. They are in mmddyy form. For example, 9 June 1982 is 060982. 2) OS version number - integer ( 2 bytes which represent the numbers in x.x). 3) Number of floppies in image - integer. 4) This floppies number - integer. 5) The number of valid blocks on this floppy - integer. 6) Copyright info - 40 bytes of a Pascal string constant string := "(c) Copyright 1982 Corvus Systems, Inc." length of string := 39 The following floppies are standard Merlin volumes. The files are moved from the floppies to the system volumes with the standard File Manager copy routine. 7 extra disks with files added by user: 1) Pascal disk Comes with basic system - volume names: PASCAL1,PASCAL2 - In order to use the compiler, the User must put these files, except for PASLIB.OBJ and CCLIB.OBJ, in volume CCSYS. PASCAL 190 disk1 CODE 88 disk2 PASCTERRS.TEXT 14 disk2 PASLIB.OBJ 53 disk1 CCLIB.OBJ 167 disk2 in volume CCLIB 2) Assembler disk Comes with basic system - volume name: CCASM - User must put files in volume CCSYS to use with system. ASM68K 73 DEBUG 12 LIBRARY 25 LINKER 51 LOADER.IMAGE 1 3) CONSTELLATION II disks Comes with basic system - User must put file SPOOL in volume CCSYS to use with system. ????? - denise knows must also include : DDDIAG DIAG.DATA SPOOL 4) Fortran disk - volume names: FRTRN1,FRTRN2,FRTRN3 - In order to use the compiler, the User must put these files, except for FTNLIB.OBJ and PASLIB.OBJ, in volume CCSYS. FORTRAN 190 disk 1 CODE 88 disk 3 same as Pascal disk CODE file FTNCTERRS.TEXT 28 disk 1 FTNRTERRS.TEXT 14 disk 1 FTNLIB.OBJ 220 disk 2 PASLIB.OBJ 53 disk 2 same as Pascal disk PASLIB.OBJ file 5) EdWord disk - volume name: CCWP - User must put files in volume CCSYS to use with system. ED 211 make sure final version from Karl EDINIT.TEXT 10 6) LogiCalc disk - volume name: CCLC - User must put files in volume CCSYS to use with system. CC.LGICLC 140 make sure final version from SPI LCDUMP 32 in volume CCLC on network 7) CP/M disk - volume name: CCCPM - User must put files in volume CCSYS to use with system. CC.CPM 23 CC.CPM1 26 current one is Apple cp/m must have a clean!!! CP/M from Digital Research PROCEDURE TO CREATE DISTRIBUTION DISK MASTERS : All disks for 5 1/4" can only be created on an Apple computer. All the disks, except for the CCSYS image built for the Sysgen program are built by copying the specified files to Apple floppies from the volumes they reside on. After copying the files to a given floppy flip the directory to a Merlin readable structure. Make sure the floppies have the correct volume names. The Sysgen image floppies are created by using a program called BUILDIMAGE. Image building Procedure : 1) On the Concept, create an image volume of CCSYS and name it SYSMAKE. It must have all the files specified for the image floppies in it, but no others. Crunch the volume SYSMAKE after all the files are copied to it. 2) Logon to an Apple Pascal system connected to the same network that the volume SYSMAKE is on. Mount the volume and flip the directory so the Apple Pascal system has access to it. Make sure this Apple has a floppy disk drive connected and accessable to the system as Unit #9. 3) Format enough floppies as is neccessary to hold the CCSYS image on it. 4) Run the program BUILDIMAGE. 5) Run the program CMPIMAGE to verify image written is correct. DESIGN FOR PROGRAM BUILDIMAGE : Get control info from user : - Date - OS version number open volume SYSMAKE: read directory - 2028 bytes starting at block 2. close volume SYSMAKE: calculate last block of volume which contains valid data. calculate number of floppies needed and tell user. - each floppy has 279 blocks available to use for image. ask user if have enough and should continue. if user says Yes then build control block to be written to block 0 of each floppy. - force valid blocks to 279. - Put in Date, OS version number, number of floppies in image, and copyright string. - zero fill rest of block - floppy number leave for write loop. open volume SYSMAKE:. flopnumb := 1; j := 0; tell user to insert first diskette into disk drive. write the control block for this floppy onto block(j) -- zero - put flopnumb into floppy number field of control block. - flip all integers. j := j+1; for i:=0 to 1 do read in block i of volume SYSMAKE: . write it out to block j of floppy. j := j+1; end; read in directory off of SYSMAKE: - 2028 bytes starting at block 2 flip all integer values in the directory and file entries. - each entry is 26 bytes long. - maximum of 78 entries including the directory entry, which has a variant structure to the other entries. - for all entries change the following fields: 1) firstblock - index = 0 2) nextblock - index = 2 3) misc. data - index = 4 - for the directory entry flip the following fields: 1) deovblock - index = 14 2) dnumfiles - index = 16 3) dlastboot - index = 20 - for all the file entries flip the following fields: 1) dlastbyte - index = 22 2) daccess - index = 24 write directory to floppy starting at block j. j := 7; <== First available block on floppy after directory is written. 1 control block, 2 boot blocks, and the directory is 4 blocks. do i:=6 to last block number valid on SYSMAKE: if j=0 then tell user to put in next floppy. wait for user to do so. flopnumb := flopnumb+1; put flopnumb in floppy number of control block. write control info to block (j) of floppy. j := j+1; blockcnt := 0; end;{if} read block(i) of volume SYSMAKE: write it to block(j) of floppy. blockcnt := blockcnt+1; if j=279{last block on floppy} then j:=0 else j:=j+1; end;{do} if blockcnt<>279 then put blockcnt in valid block field of control block. write control block to block 0 of floppy. end;{if} close volume SYSMAKE:. tell user done. end;{if} DONE.