|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 DFS Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 DFS Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 4096 (0x1000) Types: EM, TextFile Names: »ST.EM«
└─⟦b4205821b⟧ Bits:30000743 8mm tape, Rational 1000, DFS, D_12_7_3 SEQ288 └─ ⟦this⟧ »ST.EM« └─⟦b434774df⟧ Bits:30000528 8mm tape, Rational 1000, DFS, D_12_6_5 └─ ⟦this⟧ »ST.EM« └─⟦bc1274df5⟧ Bits:30000750 8mm tape, Rational 1000, DFS backup from PAM's R1000 └─ ⟦this⟧ »ST.EM«
[case,%1%] [when,cp] [flush_csa] [save_seq_state] [set SDR [xeq seq test_read_top 0]] [set SDR [xeq seq read_sdr]] [set CUR_LEX [#extract [arg 2 [var sdr]],3C,4]] [set CURRENT_NAME [#extract [arg 1 [var sdr]],0,20]] [set ST_INNER [arg 2 [xeq seq test_read_resolve 0 [var CUR_LEX]]]] [set ST_PRED [#extract [xeq seq test_read_pred 0],2C,14]] [set ST_FRAME [var ST_PRED]] [restore_seq_state] [dpc] [display_frame_info [var ST_INNER]] [display_frame_info [var ST_PRED]] [when,*] [display_frame_info [var ST_FRAME]] [when,poffs] [get_arg %2%,OFFSET,(words),:] set BIT_OFFS [and,[lshift,[add,[var ST_FRAME],[var OFFSET]],7], 0FFFFFF80]; ! - start tag_query with MEM 3 because of SET_INH problems; tag_query,3,1,[var CURRENT_NAME],[var BIT_OFFS]; [#le,[var SET_NUM],0F] [set CONTROL_WORD [xeq MEM[rshift,[var SET_NUM],2], READ_MEMORY_SPECIAL,[mul,[var SET_NUM],10], 1,[var CURRENT_NAME],[var BIT_OFFS]]] [write OFFSET,,,,,= [rshift,[var BIT_OFFS],7]] display_control_word [arg 1 [var CONTROL_WORD]], [arg 2 [var CONTROL_WORD]], [var BIT_OFFS]; [else] write NO BOARDS HIT - PAGE NOT IN MEMORY; [end] kill CONTROL_WORD; kill SPACE; kill NAME; kill BIT_OFFS; kill SET_NUM; kill TS_DATA; [when,noffs] [get_arg %2%,OFFSET,(words),:] [set OFFSET [sub,0,[var OFFSET]]] set BIT_OFFS [and,[lshift,[add,[var ST_FRAME],[var OFFSET]],7], 0FFFFFF80]; ! - start tag_query with MEM 3 because of SET_INH problems; tag_query,3,1,[var CURRENT_NAME],[var BIT_OFFS]; [#le,[var SET_NUM],0F] [set CONTROL_WORD [xeq MEM[rshift,[var SET_NUM],2], READ_MEMORY_SPECIAL,[mul,[var SET_NUM],10], 1,[var CURRENT_NAME],[var BIT_OFFS]]] [write OFFSET,,,,,= [rshift,[var BIT_OFFS],7]] display_control_word [arg 1 [var CONTROL_WORD]], [arg 2 [var CONTROL_WORD]], [var BIT_OFFS]; [else] write NO BOARDS HIT - PAGE NOT IN MEMORY; [end] kill CONTROL_WORD; kill SPACE; kill NAME; kill BIT_OFFS; kill SET_NUM; kill TS_DATA; [when,new] [get_arg %2%,STACK_NAME,:] [set CURRENT_NAME [var STACK_NAME]] [set WORDS 1] ! - start tag_query with MEM 3 because of SET_INH problems; [tag_query,3,1,[var CURRENT_NAME],180] [#le,[var SET_NUM],0F] [set CONTROL_WORD [xeq MEM[rshift,[var SET_NUM],2], READ_MEMORY_SPECIAL,[mul,[var SET_NUM],10], 1,[var CURRENT_NAME],180]] [assert_of_kind AUXILIARY_STATE [var CONTROL_WORD]] [set ST_INNER [#extract,[arg 2 [var CONTROL_WORD]],0,14]] [set BIT_OFFS [and,[lshift,[arg 2 [var ST_INNER]],7]],0FFFFFF80] ! - start tag_query with MEM 3 because of SET_INH problems; [tag_query,3,1,[var CURRENT_NAME],[var BIT_OFFS]] [#le,[var SET_NUM],0F] [set CONTROL_WORD [xeq MEM[rshift,[var SET_NUM],2], READ_MEMORY_SPECIAL,[mul,[var SET_NUM],10], 1,[var CURRENT_NAME],[var BIT_OFFS]]] [assert_of_kind ACTIVATION_STATE [var CONTROL_WORD]] [set ST_PRED [#extract,[arg 2 [var CONTROL_WORD]],0,14]] [set ST_FRAME [var ST_PRED]] [display_frame_info [var ST_INNER]] [#ne,[var ST_INNER],[var ST_PRED]] [display_frame_info [var CURRENT_NAME] [var ST_PRED]] [end] [else] write NO BOARDS HIT - PAGE NOT IN MEMORY; [end] [else] write NO BOARDS HIT - PAGE NOT IN MEMORY; [end] [kill STACK_NAME] [kill CONTROL_WORD] [kill SPACE] [kill NAME] [kill BIT_OFFS] [kill SET_NUM] [kill TS_DATA] [endcase]«nul»