PROC D_SSR_RECORD ;Version 4 GOTO BEGIN ; ;#************************************************************************** ;# ****PROCEDURE HEADER**** ;# ;# 1.0 Introduction ;# ;# 1.1 FOT Name: D_SSR_RECORD ;# MMS-F Name: N/A ;# SUM Issue: N/A ;# Simulator Validation Status: Validated ;# ;# 1.2 Date Created: 19-DEC-94 ;# Revision: 1. 9-JAN-95 MH ;# 2. 26-MAY-95 MH ;# 3. 4-AUG-95 TB ;# 4. 11-Jun-96 TL ;# ;# 1.3 Change Description: ;# ;# 1. Replaced KNDSSNGN with DZSSNGEN since interrogation must be ;# completely defined in DB. DZSSNGEN is user defined. ;# 2. Added page reference. Changed order of DHSS and SSR record ;# commands. Deleted IF/THEN for HR Idle mode command. ;# 3. Added check for DHSS HR before sending command. ;# Added local Variable Tempadmp ;# Added TSTOL check for record/dump incrementing DKSSADMP ;# Added wait to record time for SSR Record ;# Added page reference K_CMD_STATUS ;# Added WAIT UNITL (P@CMD_STATE#TELECOMMAND = "AVAILABLE") ;# 4. Added MDI TM check for emergency SSR on scenario. ;# ;# 1.4 Point of Contact: GMiller ATSC/SOHO ;# FOT Author: MHill ATSC/SOHO 286-4799 ;# ;#************************************************************************** ;# 2.0 Description ;# ;# 2.1 Narrative Description ;# ;# Set the SSR in record mode. ;# ;# 2.2 Intended Use: ;# ;# The data recording may start: ;# - from the current position of the Record/Dump pointer ;# - or from the beginning of a selected Memory Page: in that ;# case, the Record/Dump pointer position is to be updated. ;# ;# 2.3 Duration: 4 Min. ;# ;# 2.4 References: page D_SSR_STAT_N, K_CMD_STATUS ;# ;#************************************************************************** ;# 3.0 Instructions for Use: ;# ;# 3.1 Parameters Required ;# ;# None ;# ;# 3.2 Critical Activities ;# ;# None ;# ;# 3.3 Special Constraints or Activities ;# ;# ;#************************************************************************** ;# 4.0 STEPS: BEGIN: LOCAL ADDR, X1, TEMPADMP IF (P@CMD_STATE#TELECOMMAND = "AVAILABLE") THEN ELSE /CLEAR ;Clearing the Command Buffer. ENDIF IF (P@DKSSNMOD <> "STAND-BY") THEN /DZSSNSBN ;Set SSR in Stand-by WAIT ;Verify command buffer contents /SEND WAIT UNTIL (P@DKSSNMOD = "STAND-BY") ENDIF IF ( (P@KKTMFID .NE. "MR/HR 1") AND (P@KKTMMODE .NE. "IDLE") ) THEN /KNK1ET31 ;Set DHSS to HR Idle mode WAIT ;Verify command buffer contents /SEND WAIT UNTIL (P@KKTMFID = "MR/HR 1") WAIT UNTIL (P@KKTMMODE = "IDLE") ELSE ENDIF IF (MKSQRG3 .NE. 0) THEN /MBSQREG,0003,0000 ; Set VC flag to idle /SEND WRITE "NOTIFY MDI LATER OF UNPLANNED TRANSITION TO IDLE." ENDIF ASK "WILL RECORD START FROM CURRENT POSITION OF DUMP/RECORD POINTER (Y/N)" LET ANSWER = %UPPER(ANSWER) IF (ANSWER="Y") THEN GOTO STUB ELSE ASK "ENTER LOGICAL ADDRESS OF DESIRED MEMORY PAGE"ADDR LET X1 = %HEX(H'$ADDR' * H'2' + H'2000',4) /DZSSNGEN,$X1 ;Send memory page selection cmd WAIT ;Verify command buffer contents /SEND WAIT UNTIL (DKSSADMP = H'$ADDR') ;Check value of logical address of ;current memory page, at updated record/dump pointer position ENDIF STUB: /KNK1ET41 ;Put COBS/DHSS in record mode WAIT ;Verify command buffer contents /SEND WAIT UNTIL (P@KKTMFID = "MR/HR 1") WAIT UNTIL (P@KKTMMODE = "RECORD") WAIT UNTIL (P@CMD_STATE#TELECOMMAND = "AVAILABLE") /DZSSNR1N ;Send a record ML cmd to set SSR in record mode WAIT ;Verify command buffer contents /SEND WAIT UNTIL (P@DKSSNMOD = "RECORD") ;Verify SSR in record mode WAIT UNTIL (P@DKSSNCHL = "CHAN. 1") ;Verify Record/dump channel 1 in use WAIT ;Record Time KKTCMEXO (Page - K_CMD_STATUS) WAIT UNTIL (P@DSSSNCKA = "ACTIVE") ;Verify Record clock/data active WRITE "Verify record/dump pointer is incrementing (DKSSADMP) Note with record" WRITE "rate at 162 kbps change of Memory Page address will occur every 9 seconds" LET TEMPADMP = DKSSADMP WAIT UNTIL (DKSSADMP .GT. TEMPADMP) ;#************************************************************************** ;# 5.0 Final Constraints ;# ;# When in record mode, SSR only accepts Standby ML command ;# When in record mode, if the end of Memory stack is reached, SSR ;# returns to standby ;# ;#************************************************************************** ENDPROC