" *********************************************************** " * * " * Copyright, (C) Honeywell Information Systems Inc., 1982 * " * * " *********************************************************** " FD355 - Dump DataNet 355 Core Image into Dump Partition. " Coded 5/73 by N. I. Morris & R. B. Snyder " Modified 10/2/75 by Mike Grady to run multiple 355s name fd355 tra start Go to start of procedure. include bosequ include bos_common include fdmp " " This is the start of the FD355 program. start: stx2 X2 save return address tsx2 initint Initialize interrupts and faults. arg X2 Return point for execute fault. tsx2 init_io Initialize I/O package. tsx2 ttyinit Initialize operator's console. arg X2 Return point for REQUEST button. tsx2 cvinit Initialize device address conversion " Initialize the fdump package and read in header. tsx2 fdmp_read_header arg =1 tra fd355_error lca 1,dl Set valid flag to indicate sta hdr.d355_valid dump not processed. rscr 4*8 Set time of this dump. staq hdr.d355_time lda first_rnum get first record of dump partition adla (hdr_lth+page_size-1)/page_size,dl add # of records in header sta next_rnum set next record for dumping adla (d355_lth+page_size-1)/page_size,dl add # of records in dump sta last_rnum set limit for d355 dump image stz hdr.which_355 indicate no 355s dumped yet. " Print message to operator. tsx2 erpt acc 'error report form # ^d' arg hdr.erfnum " " The follwoing code reads 1024 36 bit words at a time from " the Datanet-355 and calls a subroutine to put this data on disk " in the dump partition. dump_355_loop: aos which_355 increment 355 number lda which_355 get number tsx2 conf355 get config info tra done none, next pls ldq which_355 get number sbq 1,dl get offset mpy 16,dl into dump for this one stq dump_offset save it ldq which_355 get 355 number again sbq 1,dl get 355 offset lda =o400000,du get a bit arl 0,ql shift into correct position orsa hdr.which_355 set in hdr lda first_rnum get first record to write into adla (hdr_lth+page_size-1)/page_size,dl bump up to next page adla dump_offset add in offset sta next_rnum next place to write ldx6 0,du zero addr of next to dump stx6 dn355_addr (upper half of word only) stz reread_sw not rereading now read_355_loop: tsx2 read_355_words read data from 355 arg indword into buffer following indword dn355_addr: zero 0,page_size Upper half of this word gets modified. eax7 page_size/sector_size tell subroutine to write 16 64 word blocks tsx2 fdmp_write_data do it tra fd355_error szn reread_sw is this the final re-read? tnz done yes, all done ldx6 dn355_addr get DataNet 355 address eax6 page_size*2,6 step to next block of core stx6 dn355_addr and replace address cmpx6 32768,du are we finished? tmi read_355_loop if not, loop " Now setup to re-read the first 1024 words. This is " done so that we get a good copy of the common region " which is used to find the trace table. This is " really only required if we are dumping a running " 355, but who knows if its still running. stc1 reread_sw make the switch non-zero ldx6 0,du set address to zero stx6 dn355_addr update the address lda first_rnum get the address of the first disk record adla (hdr_lth+page_size-1)/page_size,dl add in size of header adla dump_offset add in offset sta next_rnum set next address to write the data tra read_355_loop done: lda which_355 check which one that was cmpa max_no_355s,dl last one? tnz dump_355_loop no, loop tsx2 fdmp_write_header Write out the header now. tra fd355_error X2: eax2 * Restore X2. lca 1,dl No next command. tra mem|1,2 Return to BOS main control. fd355_error: tsx2 erpt acc 'error return from fdump package' tra X2 reread_sw: oct 0 indword: oct 0 fdmp_buff: bss ,page_size dump_offset: oct 0 which_355: oct 0 equ max_no_355s,4 include rd355 include conf355 include bos_tv end " " " ----------------------------------------------------------- " " " " Historical Background " " This edition of the Multics software materials and documentation is provided and donated " to Massachusetts Institute of Technology by Group Bull including Bull HN Information Systems Inc. " as a contribution to computer science knowledge. " This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, " Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell Bull Inc., Groupe Bull " and Bull HN Information Systems Inc. to the development of this operating system. " Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), " renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership " of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for " managing computer hardware properly and for executing programs. Many subsequent operating systems " incorporated Multics principles. " Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., " as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . " " ----------------------------------------------------------- " " Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without " fee is hereby granted,provided that the below copyright notice and historical background appear in all copies " and that both the copyright notice and historical background and this permission notice appear in supporting " documentation, and that the names of MIT, HIS, Bull or Bull HN not be used in advertising or publicity pertaining " to distribution of the programs without specific prior written permission. " Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. " Copyright 2006 by Bull HN Information Systems Inc. " Copyright 2006 by Bull SAS " All Rights Reserved " "