README.ADCC.SYS 1 README - ADCCDIAG - 15 July 2023 - GBS 2 3 Standalone ADCCDIAG built as an SDUPIII diagnostic using 4 bits and pieces from HP32341.SUPPORT which enable the same 5 thing but for GICGIAG. We basically hijack this process 6 and replace the GICDIAG segment in their USL with our own 7 compilation of S20S231A (ADCCDIAG). Their USL contains a 8 DUS runtime implementation that sits on top of the (very 9 minimal) SDUPII runtime. 10 11 ADCCJOB will compile ADCCDIAG, optionally producing a 12 separate SPLLIST spoolfile ADCCCOMP, and copy its RBM 13 into a copy of the all-inclusive GICGIAG USL, replacing 14 the existing SEG' with our own, then it :PREPs the USL 15 to produce the final ADCCDIAG standalone executable. This 16 will have a single unresolved external PUTADDR which 17 magically gets resolved by SDUPII as it builds the tape. 18 19 Note that the ;PMAP listing and the segment map output by 20 SDUPII as it writes the tape (both in the ADCCJOB $STDLIST) 21 together allow mapping of runtime absolute memory addreses 22 for code back to the source line in S20S231A if needed. 23 24 SDUPII is then invoked to write the bootable diagnostic 25 tape. ADCCDIAG will be file #1 on the resulting DUSIII 26 tape, so boot from tape, Set the switch register to 1 27 and RUN then hit return on the console. 28 29 Contents: 30 ADCCDIAG - Final compiled standalone executable 31 ADCCJOB - Complete build and tape creation job 32 ADCCUSL - Complete :PREPable USL with ADCCDIAG 33 README - This file 34 S20S231A - ADCCDIAG source code to compile 35 S20SUSL - USL containing compiled S20S231A only 36 UD451A - Preppable GICDIAG all-in-one USL used as our base 37 38 Dependencies: 39 SPLIIX.PUB.SYS 40 SDUPII.HP32230.SUPPORT 41 42 Gavin Scott 43 15 July 2023 ADCCJOB.ADCC.SYS 1 !JOB ADCCDIAG,MANAGER.SYS,ADCC 2 ! 3 !COMMENT Build a bootable DUSIII/SDUPII ADCCDIAG. 4 ! 5 !COMMENT This leverages the HP32341.SUPPORT DUSIII files 6 !COMMENT which conveniently include all the required 7 !COMMENT components un USL form. We have used these to 8 !COMMENT create a base USL to which a compiled DUS program 9 !COMMENT USL RBM can be added, then PREPed to produce a 10 !COMMENT program file ready to be put onto an SDUPII tape. 11 ! 12 !COMMENT *** PURGE THE OLD ADCCDIAG PROGRAM *** 13 ! 14 !CONTINUE 15 !PURGE ADCCDIAG 16 ! 17 !COMMENT *** COMPILE S20S231A (ADCCDIAG) *** 18 ! 19 !FILE SPLTEXT=S20S231A 20 !FILE SPLLIST=ADCCCOMP;DEV=LP,1 21 ! 22 !COMMENT *** COMMENT IF YOU WANT THE COMPILE LISTING 23 !FILE SPLLIST=$NULL 24 ! 25 !RUN SPLIIX.PUB.SYS;PARM=3 26 ! 27 !COMMENT *** SAVE THE USL FILE *** 28 ! 29 !CONTINUE 30 !PURGE S20SUSL 31 !SAVE $OLDPASS,S20SUSL 32 ! 33 !COMMENT *** COPY THE BASE USL WITH ALL DEPENDENCIES *** 34 ! 35 !CONTINUE 36 !PURGE ADCCUSL 37 !FCOPY FROM=UD451A;TO=ADCCUSL;NEW 38 ! 39 !COMMENT *** REPLACE SEG' WITH OUR NEW ONE *** 40 ! 41 !SEGMENTER 42 USL ADCCUSL 43 PURGERBM SEGMENT,SEG' 44 CEASE CRTOUT 45 CEASE DODELAY 46 AUXUSL S20SUSL 47 COPY SEGMENT,SEG' 48 EXIT 49 !COMMENT 50 !COMMENT *** PREP IT ALL INTO THE STANDALONE PROG *** 51 ! 52 !PREP ADCCUSL,ADCCDIAG;PMAP;NOFPMAP 53 !SAVE ADCCDIAG 54 ! 55 !COMMENT *** BUILD SDUPII TAPE 56 ! 57 !TELLOP *** MOUNT NEW TAPE FOR ADCCDIAG SDUPII BOOT TAPE *** 58 !RUN SDUPII.HP32230.SUPPORT 59 N 60 2 61 ADCCDIAG 62 / 63 64 !TELLOP *** ADCCDIAG TAPE COMPLETE *** 65 !EOJ