; NAME: mk_cont.ips ; PURPOSE: Make a continuum data product and header ; METHOD: ; IPRL_CONT_PARAM = Si source (l,h), Ld source (l,h), Sd source (l,h), destination (l,h), block, Cadc ; n/k, dpc (h,l) ; Uses page 17 for extracted temporary storage of Si ; Uses page 18 for extracted temporary storage of Sd ; HISTORY: Written 27-Feb-96 by M.Morrison ; 27-Feb-96 (MDM) - Use the LDEP page to make the header for the CONT data product (instead of Si) ; 27-Feb-96 (MDM) - Modified to force low word to be 0 for the MK_FLTGRAM source page ; - Fixed IPRL_FLTGRAM_PARAM dest page ; ; QSR_MK_CONT:: ;-------- Extract the Si SETREG $IPRL_FLTGRAM_PARAM 0 ;set the source page (l) COPYREG $IPRL_CONT_PARAM+1 $IPRL_FLTGRAM_PARAM+1 ;set the source page (h) SETREGS $IPRL_FLTGRAM_PARAM+2 2 17:0x0726 ;set the destination page COPYRD2D $IPRL_FLTGRAM_SI $IPRL_FLTGRAM_PARAM+8 3 ;last three words are n/k, dpc(h,l) CALLQUE $QSR_MK_FLTGRAM ;-------- Extract the Sd SETREG $IPRL_FLTGRAM_PARAM 0 ;set the source page (l) COPYREG $IPRL_CONT_PARAM+5 $IPRL_FLTGRAM_PARAM+1 ;set the source page (h) SETREGS $IPRL_FLTGRAM_PARAM+2 2 18:0x0726 ;set the destination page COPYRD2D $IPRL_FLTGRAM_SD $IPRL_FLTGRAM_PARAM+8 3 ;last three words are n/k, dpc(h,l) CALLQUE $QSR_MK_FLTGRAM ;-------- Do the continuum calculation COPYRD2D $IPRL_CONT_PARAM $IPRL_CONT_WORK 10 SETREGS $IPRL_CONT_WORK 2 17:0x0726 ;set the temp source page of Si SETREGS $IPRL_CONT_WORK+4 2 18:0x0726 ;set the temp source page of Sd _CNTNM $IPRL_CONT_WORK ;-------- decode the source and destination page info COPYREG $IPRL_CONT_PARAM+3 $IPRL_HDECODE_PARAM ;copy the source page high word into a known fixed place COPYREG $IPRL_CONT_PARAM+7 $IPRL_HDECODE_PARAM+1 ;copy the dest page high word into a known fixed place CALLQUE $QSR_DO_HDECODE ;decode the value - ;-------- now copy the relevant info to the hrdinit slot and make the header COPYRI2D $IPRP_HDECODE_ADDR+1 $IPRL_HEAD_WORK 10 ;copy the register list to a fixed working area COPYREG $IPRL_CONT_PARAM+4 $IPRL_HEAD_WORK+6 ;copy the final dest(l) COPYREG $IPRL_CONT_PARAM+5 $IPRL_HEAD_WORK+7 ;copy the final dest(h) SETREGS $IPRL_HEAD_WORK+8 2 0x100000L ;set #pixels (l,h) COPYRD2D $IPRL_CONT_PARAM+10 $IPRL_HEAD_WORK+3 3 ;copy n/k, dpc(l), and dpc(h) into the HRDINIT slot COPYRD2I $IPRL_HEAD_WORK $IPRP_HDECODE_ADDR+1 10 ;copy the register list back to the slot CALLQUE $QSR_DO_HEADER RTNQUE