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

⟦fd58bd05a⟧ TextFile

    Length: 12288 (0x3000)
    Types: TextFile
    Names: »qnames      «

Derivation

└─⟦9ccaf6601⟧ Bits:30008165 Bånd med SW8000 kildetekst/release værktøjer
    └─⟦40b1eb8cd⟧ 
        └─⟦this⟧ »qnames      « 

TextFile

\f

;  tas 1.0 14.05.87                                   qnames    ...1...

;  @(#)qnames	1.3  (RC International)  7/10/90
;
; Terminal access system for rc8000 - A/S Regnecentralen
; Erik Poulsen 

m.  qnames  1.3

;  Revisions historie
;
;  87.01.15  release til betatest
;
;  87.05.14  release 1.0
;
;  88.02.25  nyt format af state i coroutine beskrivelse (f21)
;
;  88.03.17  release 1.2
;
;  89.05.19  p23 defineret
;;






; en coroutine beskrivelse består af et hoved og en hale, hovedet indeholder
; variabel der bruges af CL, variabel i hovedet er defineret ved f navne.
; hovedet er ens for alle coroutiner. Halen består af variable der bruges
; af coroutinen selv. Variable i halen i coroutine beskrivelsen 
; er defineret ved q navne.  
;
;
;                         th            sm             ph             rm  

q0   = f20       ; +0   ; used_buf    !              ! pool         ! -   next
q1   = q0  + 2   ; +2   ; max_buf     ! c_seg        ! owner        ! -   prev
q2   = q1  + 2   ; +4   ; localid     ! c_base       ! next_ph      ! termdescr
q3   = q2  + 2   ; +6   ; cuext       ! no_of_sessions!pool_head    ! -   open
q4   = q3  + 2   ; +8   ; max_timer   ! line         ! uid          ! -   mbx
q5   = q4  + 2   ; +10  ; ph          ! top_line     ! att_buf      ! -
q6   = q5  + 2   ; +12  ; next_th     ! wrk          ! att_eda      ! -
q20  = q6  + 2   ; +14  ; ic          ! first_choice ! owner_name   ! -   type
q21  = q20 + 2   ; +16  ; aic         ! top_choice   ! -            ! -   buf
q22  = q21 + 2   ; +18  ; mcl_entry   ! max_choice   ! -            ! edescr
q23  = q22 + 2   ; +20  ; mcl_cte     ! old_cth      ! -            ! -   open
q24  = q23 + 2   ; +22  ; mcl_buf     !              ! nte          ! -   mbx
q25  = q24 + 2   ; +24  ; mcl_index   !              ! localid_no   ! -
q27  = q25 + 2   ; +26  ; mcl_top     !              ! localid      ! -
q28  = q27 + 2   ; +28  ; max_mcl_stack!             ! rem_buf      ! -   type
q30  = q28 + 2   ; +30  ; var_segno   ! r_arrow      ! result       ! _   buf
q31  = q30 + 2   ; +32  ; var_seg_addr! l_arrow      ! sense_ready  ! th_att
\f

;. tas 1.0 14.05.87                                   qnames    ...2...

q32  = q31 + 2   ; +34  ; mcl_var     !              ! in_mode      ! -
q33  = q32 + 2   ; +36  ; ndisplay    !              ! op_used      ! -   type
q15  = q33 + 2   ; +38  ; td          !              !              ! -   sem
                 ; +40  ! -           !              !              ! -   0
                 ; +42  ! -           !              !              !
q9   = q15 + 6   ; +44  ; letter      !              ! letter       ! letter   
                 ; +46  !             !              !              !          
q10  = q9  + 4   ; +48  ; -  type     !              ! -  type      ! -  type  
q11  = q10 + 2   ; +50  ; -  sem      !              ! -  sem       ! -  sem   
q12  = q11 + 2   ; +52  ; -  opcode   !              ! -  opcode    ! -  opcode
q13  = q12 + 2   ; +54  ; -  result   !              ! -  result    ! -  result
q14  = q13 + 2   ; +56  ; a_sem       !              ! a_sem        ! a_sem    
                 ; +58  ! -           !              ! -            ! -        
                 ; +60  ! -           !              ! -            ! -        
q16  = q14 + 6   ; +62  ! uid         !              !              !
q100 = q16 + 2   ; +64  ; end_blk_var !              ! linkid       ! pda_tem
q101 = q100+ 2   ; +66  ; end_blk_ic  !              ! f8000_ident  ! buf
q102 = q101+ 2   ; +68  ; col         !              ! f8000_th     !
q103 = q102+ 2   ; +70  ; lin         !              ! f8000_mask   ! result
q8   = q103+ 2   ; +72  ; ans         ! ans          ! ans          ! ans
                 ; +74  ! -           ! -            ! -            ! -
                 ; +76  ! -           ! -            ! -            ! -
                 ; +78  ! -           ! -            ! -            ! -
                 ; +80  ! -           ! -            ! -            ! -
                 ; +82  ! -           ! -            ! -            ! -
                 ; +84  ! -           ! -            ! -            ! -
                 ; +86  ! -           ! -            ! -            ! -


                 ; Reentrante routine i coroutinerne ( og i gl routinerne )
                 ; bruger wrk variable i coroutine beskrivelsen, wrk variable
                 ; er delt op i følgende sammenhængende områder
                 ;
                 ;  wrk til globale routiner   36 hw  (q191)
                 ;  wrk til routiner i th     148 hw  (q192)
                 ;  wrk til routiner i ph      38 hw  (q193)
                 ;
                 ;  start adresse i cdescr er givet ved
                 ;  
                 ; q35  rel addr på første wrk variabel der bruges af
                 ;      globale routiner
                 ; q36  rel addr på første wrk i th og ph coroutinerne
                 ;         ( lægges oven i hinanden )

\f

;. tas 1.0 14.05.87                                   qnames    ...3...

q35  = q8  + 16  ; starter lige efter ans
q36  = q35 + 36  ; 
q38  = q36       ; giver længden af cdescr til rm coroutinen

q7   = q36 + 148 ; ( 148 max af q192 og q193 )
                 ; +0   ;  link       !  wrk         ! link  
                 ; +2   !  -          !  -           ! -            !
                 ; +4   !  -          !  -           ! -            !
                 ; +6   !  -          !  -           ! -            !
                 ; +8   !  -          !  -           ! -            !
                 ; +10  !  -          !  -           ! -            !
                 ; +12  !  -          !  -           ! -            !
                 ; +14  !  -          !  -           ! -            !
                 ; +16  !  -          !  -           ! -            !
                 ; +18  !  -          !  -           ! -            !
                 ; +20  !  -          !  -           ! -            !
                 ; +22  !  -          !  -           ! -            !
                 ; +24  !  -          !  -           ! -            !
                 ; +26  !  -          !  -           ! -            !

                        ; tbuf        ! tbuf         ! 
q60  = q7 + f70  ; +0   ; next_session! next_session ! pool_name    !
q61  = q60 + 2   ; +2   ; s_name      ! s_name       ! -            !
                 ; +4   !             !              ! -            !
q62  = q61 + 4   ; +6   ; tdescr      ! tdescr       ! -            !
q63  = q62 + 2   ; +8   ; taddr       ! taddr        ! - nte        !
q64  = q63 + 2   ; +10  ; size        ! size         ! ctrl_result  !
q65  = q64 + 2   ; +12  ; name        ! name         !              !
                 ; +14  ! -           ! -            !              !
                 ; +16  ! -           ! -            !   mdescr-4   !
                 ; +18  ! -           ! -            !   mdescr-2   !
q79  = q65 + 8   ; +20  ; nte         ! nte          ! mdescr       !
q66  = q79 + 2   ; +22  ; op  io_mes  ! op  io_mes   ! -  open1     !
q67  = q66 + 1   ; +24  ; mode   -    ! mode   -     ! -  open2     !
q68  = q67 + 1   ; +25  ; first  -    ! first  -     ! -  mbx       !
q69  = q68 + 2   ; +26  ; last   -    ! last   -     ! -  next      !
q70  = q69 + 2   ; +28  ; n_hw        ! n_hw         ! -  prev      !
q71  = q70 + 2   ; +30  ; open e-descr! open e_descr ! -  1<3       !
q72  = q71 + 2   ; +32  ; mbx    -    ! mbx    -     ! -  buf1      !
                 ; +34  !        -    !        -     ! -  next      !
                 ; +36  !        -    !        -     ! -  prev      !
q73  = q72 + 6   ; +38  ; type   -    ! type   -     ! -  1<4       !
q74  = q73 + 2   ; +40  ; buf_addr -  ! buf_addr -   ! -  buf2      !
q75  = q74 + 2   ; +42  ; result      ! result       ! -  used      !
\f

;. tas 1.0 14.05.87                                   qnames    ...4...

q76  = q75 + 2   ; +44  ; status      ! status       !              !
q77  = q76 + 2   ; +46  ; ch          ! ch           !              !
q78  = q77 + 2   ; +48  ; term_spec   ! term_spec    ! ctrl_ans     !
                 ; +50  ! -           ! -            ! -            !
                 ; +52  ! -           ! -            ! -            !
                 ; +54  ! -           ! -            ! -            !
                 ; +56  ! -           ! -            ! -            !
                 ; +58  ! -           ! -            ! -            !
                 ; +60  ! -           ! -            ! -            !
                 ; +62  ! -           ! -            ! -            !
q87  = q78 + 16  ; +64  ! sess num    !              !              !
q88  = q87 + 2   ; +66  ! bs          !              !              !
q80  = q88 + 2   ; +66  ! up_arrow    !              ! rem mes eda  !
q81  = q80 + 2   ; +68  ! down_arrow  !              ! -            !
q82  = q81 + 2   ; +70  ! max_col     ! max_col      ! -            !
q83  = q82 + 2   ; +72  ! max_lin     ! max_lin      ! -            !
q84  = q83 + 2   ; +74  ! blk_niv     !              ! -            !
q85  = q84 + 2   ; +76  ! mcl baser   !              ! -            !
q86  = q85 + 2   ; +78  ! mcl baser   !              !              !
q26  = q86 + 2   ; +80  ; mcl_stack   !              !              !
                 ; +80  ! -           !              !              !


q200 = q26 + a40 ; længde af coroutine beskrivelse for th, sm og ph


\f

;  tas 1.0 14.05.87                                   qnames    ...5...


; en state variabel i coroutine beskrivelse indeholder
;
;  bit 23 - 21: coroutine type
;      20 -  0: 21 logiske variable
;
; der er følgende coroutine typer
;
;      type         coroutine

p30 =  0         ;  bruges ikke
p31 =  1         ;  th der ikke kører mcl, oprettet fra ph
p32 =  2         ;  th der kører mcl, opretet efter attention
p33 =  3         ;  th der kører system menu
p34 =  4         ;  ph oprettet fra th coroutine
p35 =  5         ;  ph oprettet efter create pool message
p36 =  6         ;  rm coroutine

p39 =  7         ;  maske til at hente type fra state

;
; bit 19 - 0 bruges på følgende måde
;
;                  th             ph

p3  = 1<3  ; 18  ! term. removed
p4  = 1<4  ; 19  ! stty         ! stty
p5  = 1<5  ; 18  ! mtty         ! mtty
p6  = 1<6  ; 17  ! f8000        ! f8000
p7  = 1<7  ; 16  ! direct       ! tem
p8  = 1<8  ; 15  ! blk          !
p9  = 1<9  ; 14  ! output       !
p10 = 1<10 ; 13  ! echo         !
p11 = 1<11 ; 12  ! skip         !
p12 = 1<12 ; 11  ! cont         !
p13 = 1<13 ; 10  ! signon       ! outatt
p14 = 1<14 ;  9  ! finis        !
p15 = 1<15 ;  8  ! att          !
p16 = 1<16 ;  7  ! send_att     ! 
p17 = 1<17 ;  6  ! reserve_term !
p18 = 1<18 ;  5  ! no sys menu  !
p19 = 1<19 ;  4  ! send_get     !
p20 = 1<20 ;  3  ! link created !
p21 = 1<21 ;  2  ! f8000_type   !
p22 = 1<22 ;  1  ! som_input    !
p23 = 1<23 ;  0  ! nologin      !
\f

;  tas 1.0 14.05.87                                   qnames    ...6...

; statusbit i svar på messages til pool og tem

;             bit

p42 = 1<2  ;  21   ukendt terminal
p43 = 1<3  ;  20   ikke link til terminal
p44 = 1<4  ;  19   allerede link til terminal
p45 = 1<5  ;  18   ingen resources, ord efter status indeholder fejlkode
p46 = 1<6  ;  17   
p47 = 1<7  ;  16   link findes ikke
p48 = 1<8  ;  15   pool findes ikke
p49 = 1<9  ;  14   link findes allerede ( localid ikke entydig )
p50 = 1<10 ;  13   pool findes eller ps kan ikke oprettes
p51 = 1<11 ;  12   ikke muligt at ændre antal spool segmenter 

 
▶EOF◀