DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

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

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦28f6c1f2d⟧ TextFile

    Length: 1536 (0x600)
    Types: TextFile
    Names: »writedatetx«

Derivation

└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ.  Detaljer om "HC8000" projekt.
    └─⟦0364f57e3⟧ 
        └─⟦80900d603⟧ »giprocfile« 
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦80900d603⟧ »giprocfile« 
            └─⟦this⟧ 

TextFile



;       write_date_tx         * page 1   27 09 77, 13.31;  

;  write_date
;  **********

if listing.yes
char 10 12 10

write_date = set 1

write_date = algol

external integer procedure write_date(zout, date);  
__________________________________________________

value    date;  
integer  date;  
zone     zout;  

begin
  comment Datoen i date (på formen dag*10000+måned*100+
  år mod 100) udskrives på formen
  <ugedag> den <dag>.<måned> 19<år>
  på zonen zout, der skal være åben og klar til
  karakter output.
  willy weng, gi, 25 03 74;  

  integer år, måned, dag, uge_dag;  

  år      := date mod 100;  
  måned   := (date//100) mod 100;  
  dag     := date//10000;  
  uge_dag := (år*365 +
  (år - (if (år>3 and måned<3) then 1 else 0))//4 +
  (case måned of(
  0, 31, 59, 90, 120, 151, 
  181, 212, 243, 273, 304, 334)) +
  dag) mod 7;  
  comment størelsen der tages mod 7 er antallet
  af dage siden 0.januar 1900, der var en søndag;  

  write_date:= write(zout, case (ugedag + 1) of (
  <:søndag:>, <:mandag:>, <:tirsdag:>, 
  <:onsdag:>, <:torsdag:>, <:fredag:>, 
  <:lørdag:>), <: den:>, << d>, dag, 
  <:.:>, case måned of (
  <:januar:>, <:februar:>, <:marts:>, 
  <:april:>, <:maj:>, <:juni:>, 
  <:juli:>, <:august:>, <:september:>, 
  <:oktober:>, <:november:>, <:december:>), 
  << dddd>, 1900+år);  
end write_date;  

end

if warning.yes
(mode 0.yes
message write_date not ok
lookup write_date)
▶EOF◀