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

⟦91791e105⟧ TextFile

    Length: 33289 (0x8209)
    Types: TextFile
    Names: »RUNTIME_DATA_LIST«

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"
                                                ;
                                                ;   This number is used to check the compatibility
                                                ;   of the program and the loaded shared runtime.
                                                ;   The value must be incremented whenever an execution
                                                ;   incompatible change is made in the runtime.
                                                ;
                                                ;       Version         Incompatible changes in this version
                                                ;       -------         ------------------------------------
                                                ;           0           Initial release of shared runtime
                                                ;
                                                ;           1           Changed Os2000_Process_Defs to use
                                                ;                       special Ada work area rather than
                                                ;                       user accounting area.
                                                ;
                                                ;           2           Added 12 long words of spare storage
                                                ;                       in Runtime_Data; this will permit
                                                ;                       some addition of data in the shared
                                                ;                       runtime to be compatible. 
                                                ;
                                                ;           3           1.) Rev 6 compiler
                                                ;                       2.) Runtime entry point table now 16-bit
                                                ;                           offset from table to entry in words.
                                                ;                       3.) Deleted some unnecessary shared data items.
                                                ;                       4.) General cleanup
                                                        compatibility_version   equ 3
                                                ;
                                                ;   Amount of stack space reserved for the runtime in bytes
                                                ;
                                                        runtime$stack$cushion  equ 1024  
                                                ;
                                                ;   Values for certain runtime error messages and warnings.
                                                ;
                                                        error$code                      equ     16#8000#    
                                                        warning$code                    equ     16#8100#
                                                
                                                        elaboration$ferror              equ     1
                                                        finalization$ferror             equ     2
                                                        unhandled$main$trap$ferror      equ     3
                                                        lib$exception$ferror            equ     5
                                                        main$exception$ferror           equ     6
                                                        init$trap$handler$ferror        equ     37
                                                        insufficient$stack$ferror       equ     44
                                                        no$runtime$ferror               equ     45
                                                        rt$incompatible$ferror          equ     46
                                                
                                                        task$exception$warning          equ     1
                                                        heap$create$warning             equ     2       
                                                        stack$request$warning           equ     4
                                                
                                                ;
                                                ;   Values used in exit system call
                                                ;
                                                
                                                        No$Error                        equ     0
                                                        Some$Error                      equ     1
                                                ;
                                                ;   Comp Unit id for all runtime units except predefined exceptions 
                                                ;
                                                        runtime_compunit                equ     17      
                                                ;
                                                ;   Comp Unit id for predefined exception
                                                ;
                                                        exception_compunit              equ     1
                                                ;
                                                ;   Subprogram kind for runtime suprograms
                                                ;
                                                        sp_rt                           equ     1
                                                ;
                                                ;   Special statement numbers
                                                ;
                                                        stmt.end_prolog                 equ     1
                                                        stmt.begin_epilog               equ     16#7FFF#
                                                ;
                                                ;   Subprogram ids for debug directives within runtime
                                                ;   entry points.
                                                ;
                                                        sp.internal                             equ     16#0_00#
                                                
                                                        sp.enum_image                           equ     16#1_00#
                                                        sp.enum_pos                             equ     16#1_01#
                                                        sp.enum_pred                            equ     16#1_02#
                                                        sp.enum_succ                            equ     16#1_03#
                                                        sp.enum_value                           equ     16#1_04#
                                                        sp.enum_width                           equ     16#1_05#
                                                        sp.int_image                            equ     16#1_06#
                                                        sp.int_value                            equ     16#1_07#
                                                        sp.int_width                            equ     16#1_08#
                                                
                                                        sp.allocate_collection                  equ     16#2_00#
                                                        sp.allocate_fixed_cell                  equ     16#2_01#
                                                        sp.deallocate_collection                equ     16#2_02#
                                                        sp.deallocate_fixed_cell                equ     16#2_03#
                                                        sp.collection_size                      equ     16#2_04#
                                                   
                                                        sp.initialize_master                    equ     16#3_00#
                                                        sp.create_task                          equ     16#3_01#
                                                        sp.activate_offspring                   equ     16#3_02#
                                                        sp.notify_parent                        equ     16#3_03#
                                                        sp.task_end                             equ     16#3_04#
                                                        sp.await_dependents                     equ     16#3_05#
                                                        sp.task_completion                      equ     16#3_06#
                                                        sp.terminate_allocated_offspring        equ     16#3_07#
                                                        sp.terminate_dependent_offspring        equ     16#3_08#
                                                        sp.entry_call                           equ     16#3_09#
                                                        sp.conditional_entry_call               equ     16#3_0A#
                                                        sp.timed_entry_call                     equ     16#3_0B#
                                                        sp.begin_accept                         equ     16#3_0C#
                                                        sp.end_accept                           equ     16#3_0D#
                                                        sp.quick_accept                         equ     16#3_0E#
                                                        sp.close_alternatives                   equ     16#3_0F#
                                                        sp.open_delay                           equ     16#3_10#
                                                        sp.open_entry                           equ     16#3_11#
                                                        sp.open_terminate                       equ     16#3_12#
                                                        sp.select_rendezvous                    equ     16#3_13#
                                                        sp.abort_multiple_tasks                 equ     16#3_14#
                                                        sp.check_return_task                    equ     16#3_15#
                                                        sp.delay_statement                      equ     16#3_16#
                                                        sp.entry_count                          equ     16#3_17#
                                                        sp.task_callable                        equ     16#3_18#
                                                        sp.task_stack_size                      equ     16#3_19#
                                                        sp.task_terminated                      equ     16#3_1A#
                                                
                                                        sp.raise_exception                      equ     16#4_00#
                                                        sp.raise_constraint_error               equ     16#4_01#
                                                        sp.propagate_exception                  equ     16#4_02#
                                                        sp.stack_check                          equ     16#4_03#
                                                
                                                        sp.mantissa                             equ     16#5_00#
                                                        sp.large                                equ     16#5_01#
                                                        sp.fixed_multiply                       equ     16#5_02#
                                                        sp.compare_8_bit_unsigned               equ     16#5_03#
                                                        sp.compare_8_bit_signed                 equ     16#5_04#
                                                        sp.compare_16_bit_unsigned              equ     16#5_05#
                                                        sp.compare_16_bit_signed                equ     16#5_06#
                                                        sp.compare_32_bit_unsigned              equ     16#5_07#
                                                        sp.compare_32_bit_signed                equ     16#5_08#
                                                ;
                                                ;   Linkage mechanisms used in assembly routines.
                                                ;
                                                ;       Identification of the mechanism in a .subprogram directive
                                                ;       and information provided in .statement directives enable
                                                ;       the debugger to find the return pc.
                                                ;
                                                        linkage.frame   equ 16#00_00_00_00#     ; return pc may be found at
                                                                                                ; offset from frame pointer
                                                
                                                        linkage.simple  equ 16#10_00_00_00#     ; return pc may be found at
                                                                                                ; offset from stack pointer
                                                
                                                        linkage.none    equ 16#50_00_00_00#     ; no return pc exists,
                                                                                                ; in bottom routine
                                                
                                                        linkage.trap    equ 16#60_00_00_00#     ; in trap handling code
                                                ;
                                                ;       Definitions for locking primitives
                                                ;
                                                
                                                                .offset 0       ;  type Q_Element is
                                                                                ;      record
        00000008                                element'size:                   ;      end record;
                                                ;
                                                ;       Ada task control block (TCB) definitions
                                                ;
                                                                                .offset 0
                                                
                                                                                
                                                
        00000050                                tcb'size:
                                                
                                                b.action_state.exception_pending        equ     3
                                                
                                                
                                                        .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
                                                
        00000000                                __Root_Create_Return:           .ds.l   1 ;  return from Start call
        00000004                                __Task_Create_Return:           .ds.l   1 ;  return from task create
        00000008                                __Root_Finish_Return:           .ds.l   1 ;  return from Finish call 
        0000000C                                __Task_Finish_Return:           .ds.l   1 ;  return from task end
        00000010                                __Propagate_Exception_Branch:   .ds.l   1 ;  branch for propagate exception
        00000014                                __Heap_Size_Var:                .ds.l   1 ;  heap size to be allocated        
        00000018                                __Main_Priority_Var:            .ds.l   1 ;  ADA priority of main program
        0000001C                                __Data_Size_Var:                .ds.l   1 ;  size of program data area
        00000020                                __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
                                                
        00000024                                __Runtime_Entry_Pointer:         .ds.l   1 ;  pointer to table of Ada Runtime
                                                                                           ;  entry points
        00000028                                __MsgQ_Entry_Pointer:            .ds.l   1 ;  pointer to table of Message Queue
                                                                                           ;  entry points
        0000002C                                __peab_msq_table:                .ds.l   1 ;  pointer to table of Message Queue
                                                                                           ;  entry points; used by PEAB IPC
        00000030                                __Process_Descriptor_Pointer:    .ds.l   1 ;  pointer to OS-9 process descriptor
                                                
                                                                                           ;  of currently running process 
        00000034                                __OS_Param_Ptr:                  .ds.l   1 ;  address of command line params    
                                                     
        00000038                                __OS_Param_Size:                 .ds.l   1 ;  byte count of command line params 
                                                       
        0000003C                                __Main_Code_Start_Var:           .ds.l   1 ;  main code start address; must be
        00000040                                __Main_Code_Start_Copy:          .ds.l   1 ;  adjacent for debugger.
        00000044                                __Module_Base_Address:           .ds.l   1 ;  module code base address  
        00000048                                __Global_Base:                   .ds.l   1 ;  global data base address
        0000004C                                __Root_Task_Id:                  .ds.l   1 ;  address of tcb for main program
        00000050                                __Debug_Safety_Check:            .ds.b   1 ;  safety check flag
        00000051                                __Debug_Exceptions:              .ds.b   1 ;  exception tracing flag
        00000052                                __Debug_Task_Mgmt:               .ds.b   1 ;  task management debug flag
        00000053                                __Debug_Storage_Mgmt:            .ds.b   1 ;  storage management debug flag
        00000054                                __Heap_Ptr:                      .ds.l   1 ;  address of base of heap         
        00000058                                __Heap_Next_Available:           .ds.l   1 ;  next available heap location
        0000005C                                __Heap_First_Unavailable:        .ds.l   1 ;  top of heap
        00000060                                __Storage_Mgmt_Freelist:         .ds.l   1 ;  freelist pointer for chunks
        00000064                                __Storage_Mgmt_Semaphore:        .ds.l   2 ;  storage management lock
        0000006C                                __Tasking_Error_Var:             .ds.l   1 ;  object with Tasking_Error address
        00000070                                __Set_Exception_Indirect:        .ds.l   1 ;  indirect for set exception
        00000074                                __Get_Exception_Indirect:        .ds.l   1 ;  indirect for get exception
        00000078                                __TDlyStm_Indirect:              .ds.l   1 ;  indirect for delay statement
        0000007C                                __Signal_Intercept_Indirect:     .ds.l   1 ;  indirect for signal intercept
        00000080                                __Abort_Main_Indirect:           .ds.l   1 ;  indirect for abort main
        00000084                                __Rt_Elaborate_Indirect:         .ds.l   1 ;  indirect for shared runtime elab
        00000088                                __Rt_Finalize_Indirect:          .ds.l   1 ;  indirect for shared runtime final
        0000008C                                __Main_Handler_FError:           .ds.w   1 ;  error msg in unhandled excptn
        0000008E                                __Error_Path:                    .ds.w   1 ;  i/o path for error/warn msgs      
                                                  
        00000090                                __Abort_Main_Flag:               .ds.b   1 ;  flag to abort main program
        00000091                                __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
                                                
        00000094                                __Seq_Wait_Item:         .ds.l  2
        0000009C                                __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
        000000A0                                __Tasking_Lock:              .ds.b  Element'Size;
        000000A8                                __Task_Code_Start_Var:       .ds.l  1
        000000AC                                __Os_Base_Priority:          .ds.l  1
        000000B0                                __Ipc_Buffer_Freelist:       .ds.l  1
        000000B4                                __TT_Tcb_Clctn:              .ds.l  1
        000000B8                                __TT_Wait_List_Clctn:        .ds.l  1
        000000BC                                __TT_Branch_Table_Clctn:     .ds.l  1
        000000C0                                __TT_Buffer_Item_Clctn:      .ds.l  1
                                                ;
                                                
                                                        .align 4
        000000C4                                __Root_Tcb:                  .ds.b   Tcb'Size;
        00000114                                __Dummy_Tcb:                 .ds.b   28      ; dummy tcb is incomplete    
                                                
        00000130                                __Top_Layer:                 .ds.b   Layer_Size;
        00000148                                __Root_Layer:                .ds.b   Layer_Size;
                                                
                                                ;
                                                ;   Spares
                                                ;
                                                        .align 4
                                                
        00000160                                $Reserved:                   .ds.l   12;
                                                
                                                        .end


      Program Section Name       Kind   Length   Patches Fixups
-------------------------------- ---- ---------- ------- -------
ADA_RUNTIME_DATA                  Rel        400       0       0


Standard include file: <none>
Object module version: 11

        Assembled 390 lines in  4.613 elapsed,  4.271 CPU.
         5072 lines per elapsed minute.
         5479 lines per CPU minute.
         10 disk waits for this job.
         21434 bytes of heap used by this job.