DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ R T

⟦b9b1a440c⟧ TextFile

    Length: 7582 (0x1d9e)
    Types: TextFile
    Names: »RUNTIME_DATA_ASM«

Derivation

└─⟦afbc8121e⟧ Bits:30000532 8mm tape, Rational 1000, MC68020_OS2000 7_2_2
    └─ ⟦77aa8350c⟧ »DATA« 
        └─⟦f794ecd1d⟧ 
            └─⟦24d1ddd49⟧ 
                └─⟦this⟧ 

TextFile

;    The use of this system is subject to the software license terms and
;    conditions agreed upon between Rational and the Customer.
;
;                Copyright 1988 by Rational.
;
;                          RESTRICTED RIGHTS LEGEND
;
;    Use, duplication, or disclosure by the Government is subject to
;    restrictions as set forth in subdivision (b)(3)(ii) of the Rights in
;    Technical Data and Computer Software clause at 52.227-7013.
;
;
;                Rational
;                3320 Scott Boulevard
;                Santa Clara, California 95054-3197
;
;   PROPRIETARY AND CONFIDENTIAL INFORMATION OF RATIONAL;
;   USE OR COPYING WITHOUT EXPRESS WRITTEN AUTHORIZATION
;   IS STRICTLY PROHIBITED.  THIS MATERIAL IS PROTECTED AS
;   AN UNPUBLISHED WORK UNDER THE U.S. COPYRIGHT ACT OF
;   1976.  CREATED 1988.  ALL RIGHTS RESERVED.
;
;

        .module "RUNTIME_DATA"

;
;   This module contains definitions of data objects
;   used by the runtime.
;

        .include "runtime_definitions"

        .sect   ada_runtime_data,data,readwrite,relocatable,alignment:=4

;
;   Objects which hold code addresses or other values
;   which are determined in the user program.
;
        .gbl.l  __root_create_return
        .gbl.l  __task_create_return
        .gbl.l  __root_finish_return
        .gbl.l  __task_finish_return
        .gbl.l  __propagate_exception_branch
        .gbl.l  __heap_size_var
        .gbl.l  __main_priority_var
        .gbl.l  __data_size_var
        .gbl.l  __finish_entry_offset

__Root_Create_Return:           .ds.l   1 ;  return from Start call
__Task_Create_Return:           .ds.l   1 ;  return from task create
__Root_Finish_Return:           .ds.l   1 ;  return from Finish call 
__Task_Finish_Return:           .ds.l   1 ;  return from task end
__Propagate_Exception_Branch:   .ds.l   1 ;  branch for propagate exception
__Heap_Size_Var:                .ds.l   1 ;  heap size to be allocated        
__Main_Priority_Var:            .ds.l   1 ;  ADA priority of main program
__Data_Size_Var:                .ds.l   1 ;  size of program data area
__Finish_Entry_Offset:          .ds.w   1 ;  offset to rt entry for finish

;
;   Objects common to sequential and tasking programs.
;

        .gbl.a  __runtime_entry_pointer
        .gbl.a  __msgq_entry_pointer
        .gbl.a  __peab_msq_table
        .gbl.a  __process_descriptor_pointer
        .gbl.l  __os_param_ptr
        .gbl.l  __os_param_size
        .gbl.l  __main_code_start_var
        .gbl.l  __main_code_start_copy
        .gbl.l  __module_base_address
        .gbl.l  __global_base
        .gbl.l  __root_task_id
        .gbl.b  __debug_safety_check
        .gbl.b  __debug_exceptions
        .gbl.b  __debug_task_mgmt
        .gbl.b  __debug_storage_mgmt
        .gbl.l  __heap_ptr
        .gbl.l  __heap_next_available
        .gbl.l  __heap_first_unavailable
        .gbl.l  __storage_mgmt_freelist
        .gbl.l  __storage_mgmt_semaphore
        .gbl.l  __tasking_error_var
        .gbl.l  __set_exception_indirect
        .gbl.l  __get_exception_indirect
        .gbl.l  __tdlystm_indirect
        .gbl.l  __signal_intercept_indirect
        .gbl.l  __abort_main_indirect
        .gbl.l  __rt_elaborate_indirect
        .gbl.l  __rt_finalize_indirect
        .gbl.w  __main_handler_ferror
        .gbl.w  __error_path
        .gbl.b  __abort_main_flag
        .gbl.b  __runtime_compatibility_value
    
;
        .align  4

__Runtime_Entry_Pointer:         .ds.l   1 ;  pointer to table of Ada Runtime
                                           ;  entry points
__MsgQ_Entry_Pointer:            .ds.l   1 ;  pointer to table of Message Queue
                                           ;  entry points
__peab_msq_table:                .ds.l   1 ;  pointer to table of Message Queue
                                           ;  entry points; used by PEAB IPC
__Process_Descriptor_Pointer:    .ds.l   1 ;  pointer to OS-9 process descriptor
                                           ;  of currently running process 
__OS_Param_Ptr:                  .ds.l   1 ;  address of command line params         
__OS_Param_Size:                 .ds.l   1 ;  byte count of command line params        
__Main_Code_Start_Var:           .ds.l   1 ;  main code start address; must be
__Main_Code_Start_Copy:          .ds.l   1 ;  adjacent for debugger.
__Module_Base_Address:           .ds.l   1 ;  module code base address  
__Global_Base:                   .ds.l   1 ;  global data base address
__Root_Task_Id:                  .ds.l   1 ;  address of tcb for main program
__Debug_Safety_Check:            .ds.b   1 ;  safety check flag
__Debug_Exceptions:              .ds.b   1 ;  exception tracing flag
__Debug_Task_Mgmt:               .ds.b   1 ;  task management debug flag
__Debug_Storage_Mgmt:            .ds.b   1 ;  storage management debug flag
__Heap_Ptr:                      .ds.l   1 ;  address of base of heap         
__Heap_Next_Available:           .ds.l   1 ;  next available heap location
__Heap_First_Unavailable:        .ds.l   1 ;  top of heap
__Storage_Mgmt_Freelist:         .ds.l   1 ;  freelist pointer for chunks
__Storage_Mgmt_Semaphore:        .ds.l   2 ;  storage management lock
__Tasking_Error_Var:             .ds.l   1 ;  object with Tasking_Error address
__Set_Exception_Indirect:        .ds.l   1 ;  indirect for set exception
__Get_Exception_Indirect:        .ds.l   1 ;  indirect for get exception
__TDlyStm_Indirect:              .ds.l   1 ;  indirect for delay statement
__Signal_Intercept_Indirect:     .ds.l   1 ;  indirect for signal intercept
__Abort_Main_Indirect:           .ds.l   1 ;  indirect for abort main
__Rt_Elaborate_Indirect:         .ds.l   1 ;  indirect for shared runtime elab
__Rt_Finalize_Indirect:          .ds.l   1 ;  indirect for shared runtime final
__Main_Handler_FError:           .ds.w   1 ;  error msg in unhandled excptn
__Error_Path:                    .ds.w   1 ;  i/o path for error/warn msgs        
__Abort_Main_Flag:               .ds.b   1 ;  flag to abort main program
__Runtime_Compatibility_Value:   .ds.b   1 ;  runtime version value
;
;   Objects required only by sequential programs.
;

        .gbl.l   __Seq_Initialized
        .gbl.l   __Seq_Wait_Item

;
        .align 4

__Seq_Wait_Item:         .ds.l  2
__Seq_Initialized:       .ds.b  1

;
;   Objects required only by tasking programs.
;

        .gbl.a  __Tasking_Lock
        .gbl.l  __Task_Code_Start_Var
        .gbl.l  __Os_Base_Priority
        .gbl.l  __Ipc_Buffer_Freelist
        .gbl.l  __TT_Tcb_Clctn
        .gbl.l  __TT_Wait_List_Clctn
        .gbl.l  __TT_Branch_Table_Clctn
        .gbl.l  __TT_Buffer_Item_Clctn

        .gbl.l  __Root_Tcb
        .gbl.l  __Dummy_Tcb
                                               
        .gbl.l  __Top_Layer
        .gbl.l  __Root_Layer
                                                
        Layer_Size equ  24; bytes
    
;
        .align 4
__Tasking_Lock:              .ds.b  Element'Size;
__Task_Code_Start_Var:       .ds.l  1
__Os_Base_Priority:          .ds.l  1
__Ipc_Buffer_Freelist:       .ds.l  1
__TT_Tcb_Clctn:              .ds.l  1
__TT_Wait_List_Clctn:        .ds.l  1
__TT_Branch_Table_Clctn:     .ds.l  1
__TT_Buffer_Item_Clctn:      .ds.l  1
;

        .align 4
__Root_Tcb:                  .ds.b   Tcb'Size;
__Dummy_Tcb:                 .ds.b   28      ; dummy tcb is incomplete    

__Top_Layer:                 .ds.b   Layer_Size;
__Root_Layer:                .ds.b   Layer_Size;

;
;   Spares
;
        .align 4

$Reserved:                   .ds.l   12;

        .end