DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 DFS Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 DFS Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦0c48dc7b8⟧ EM, TextFile

    Length: 2048 (0x800)
    Types: EM, TextFile
    Names: »NEXT.EM«

Derivation

└─⟦b4205821b⟧ Bits:30000743 8mm tape, Rational 1000, DFS, D_12_7_3 SEQ288
    └─ ⟦this⟧ »NEXT.EM« 
└─⟦b434774df⟧ Bits:30000528 8mm tape, Rational 1000, DFS, D_12_6_5
    └─ ⟦this⟧ »NEXT.EM« 
└─⟦bc1274df5⟧ Bits:30000750 8mm tape, Rational 1000, DFS backup from PAM's R1000
    └─ ⟦this⟧ »NEXT.EM« 

TextFile


[#ge %1% 40]
 write Bad length. Try 1 .. 3F.;
 abort;
[end]
[#lt %1% 1]
 write Bad length. Try 1 .. 3F.;
 abort;
[end]

set oext_offset [var ext_offset];
set xstart [and, [var ext_offset] 3f];
set xend   [sub, [add, [var xstart] %1%] 1];
set ext_offset [add, [var ext_offset] %1%];

[#gt [var xend] 3f]
  set ext_var_next [get_mem_data 4 [var ext_name] [var ext_offset]];
  set ext_return,
	[#extract,
	    [var ext_var],
	    [var xstart],
	    [sub, 
		40,
	        [var xstart]
	    ]
	];
  set ext_return,
	[lshift,
	    [var ext_return],
	    [sub,
		[var xend],
	         3f
	    ]
	];
  [#lt [and [var ext_offset] 7f] 40]
    set ext_var [arg 1 [var ext_var_next]];
  [else]
    set ext_var [arg 2 [var ext_var_next]];
  [end]
  set ext_return,
	[add,
	     [var ext_return],
             [#extract,
		[var ext_var],
		0,
		[sub,
		    [var xend],
		    3f
		]
	     ]
	];
[else]
  set ext_return [#extract, [var ext_var], [var xstart], %1%];
  [#eq [var xend] 3f]
    set ext_var_next [get_mem_data 4 [var ext_name] [var ext_offset]];
    [#lt [and [var ext_offset] 7f] 40]
      set ext_var [arg 1 [var ext_var_next]];
    [else]
      set ext_var [arg 2 [var ext_var_next]];
    [end]
  [end]
[end]

write ([var oext_offset],..,[sub [var ext_offset],1]),=,[var ext_return];

«nul»