mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-26 18:04:07 +00:00
176 lines
8.0 KiB
Plaintext
176 lines
8.0 KiB
Plaintext
8086/8087/8088 MACRO ASSEMBLER RPIN 17:10:27 04/22/83 PAGE 1
|
||
|
||
|
||
VAX/VMS 8086/8087/8088 MACRO ASSEMBLER V1.0 ASSEMBLY OF MODULE RPIN
|
||
OBJECT MODULE PLACED IN RHPIN.OBJ
|
||
NO INVOCATION LINE CONTROLS
|
||
|
||
|
||
LOC OBJ LINE SOURCE
|
||
|
||
1 ; Code and Data Interface for PIN RSP
|
||
2 ; Virtual console support for Concurrent CP/M
|
||
3
|
||
4 ; March 30, 1982
|
||
5
|
||
6 name rpin
|
||
7
|
||
8 cgroup group code
|
||
9 dgroup group dats
|
||
10
|
||
11 assume cs:cgroup,ds:dgroup
|
||
12
|
||
13 public xdos,mon1,mon2,mon3,mon4,intsys
|
||
14 public rsplink, pd, ncopies, udaseg
|
||
15 public u_retseg, u_wrkseg, u_insys
|
||
16 extrn plmstart:near
|
||
17
|
||
---- 18 code segment public 'CODE'
|
||
19
|
||
0000 20 xdos proc
|
||
0000 55 21 push bp
|
||
0001 8BEC 22 mov bp,sp
|
||
0003 8B5604 23 mov dx,[bp+4]
|
||
0006 8B4E06 24 mov cx,[bp+6]
|
||
0009 CDE0 25 int 224
|
||
000B 5D 26 pop bp
|
||
000C C20400 27 ret 4
|
||
28 xdos endp
|
||
29
|
||
000F 30 intsys proc ;call O.S. as if we are
|
||
000F 55 31 push bp ;already in it
|
||
0010 8BEC 32 mov bp,sp
|
||
0012 8B5E04 33 mov bx,[bp+4]
|
||
0015 8B5606 34 mov dx,[bp+6]
|
||
0018 8B4E08 35 mov cx,[bp+8]
|
||
36
|
||
001B 1E 37 push ds
|
||
001C 8E1E0000 R 38 mov ds,rsplink ;DS = Sysdat Segment
|
||
0020 8B366800 39 mov si,ds:word ptr rlr
|
||
0024 8E441090 40 mov es,[si+p_uda]
|
||
0028 FF1E000090 41 call ds:dword ptr [supervisor]
|
||
002D 1F 42 pop ds
|
||
43
|
||
002E 5D 44 pop bp
|
||
002F C20600 45 ret 6
|
||
46 intsys endp
|
||
47
|
||
0000 48 mon1 equ xdos
|
||
0000 49 mon2 equ xdos
|
||
0000 50 mon3 equ xdos
|
||
8086/8087/8088 MACRO ASSEMBLER RPIN 17:10:27 04/22/83 PAGE 2
|
||
|
||
|
||
LOC OBJ LINE SOURCE
|
||
|
||
0000 51 mon4 equ xdos
|
||
---- 52 code ends
|
||
53
|
||
---- 54 dats segment public 'DATA'
|
||
55
|
||
0068 56 rlr equ 68h ;ready list root
|
||
0010 57 p_uda equ 10h ;UDA in process descriptor
|
||
0000 58 supervisor equ 0 ;supervisor entry point for internal
|
||
0047 59 nvcns equ 47h
|
||
0010 60 rsphdr_len equ 16
|
||
0030 61 pd_len equ 30H
|
||
0100 62 uda_len equ 100H
|
||
0060 63 insysoff equ 60H
|
||
0000 64 rsp_top equ 0
|
||
0010 65 rsp_pd equ rsp_top + rsphdr_len
|
||
0040 66 rsp_uda equ rsp_pd + pd_len
|
||
0140 67 rsp_bottom equ rsp_uda + uda_len
|
||
68
|
||
0000 69 org rsp_top
|
||
70 ;RSP header
|
||
0000 0000 71 rsplink dw 0 ;becomes system data page paragraph
|
||
0002 0000 72 sdatvar dw 0 ;tell gensys to one
|
||
0004 00 73 ncopies db 0
|
||
0005 0000 74 dw 0,0,0,0, 0
|
||
0007 0000
|
||
0009 0000
|
||
000B 0000
|
||
000D 0000
|
||
000F 00 75 db 0
|
||
0010 76 org rsp_pd
|
||
0010 0000 77 pd dw 0,0 ;link fields
|
||
0012 0000
|
||
0014 00 78 db 0 ;status
|
||
0015 B9 79 db 185 ;initial priority better than TMP - worse than
|
||
80 ;VOUT
|
||
0016 0300 81 dw 3 ;flags - system and keep
|
||
|
||
0018 50494E20202020 82 db 'PIN ' ;name
|
||
20
|
||
0020 0400 83 udaseg dw rsp_uda/10h ;uda paragraph
|
||
0022 00 84 db 0,0 ;disk,user
|
||
0023 00
|
||
0024 00 85 db 0,0 ;ldisk,luser
|
||
0025 00
|
||
0026 FF00 86 dw 0ffh ;puremem - re-entrant
|
||
87 ;rest of pd
|
||
88
|
||
0040 89 org rsp_uda ;start of uda
|
||
0040 0000 90 uda dw 0
|
||
0042 0000 91 dw 0 ;no default DMA
|
||
0044 0000 92 dw 0,0,0,0, 0,0,0,0, 0,0,0,0
|
||
0046 0000
|
||
0048 0000
|
||
004A 0000
|
||
004C 0000
|
||
004E 0000
|
||
8086/8087/8088 MACRO ASSEMBLER RPIN 17:10:27 04/22/83 PAGE 3
|
||
|
||
|
||
LOC OBJ LINE SOURCE
|
||
|
||
0050 0000
|
||
0052 0000
|
||
0054 0000
|
||
0056 0000
|
||
0058 0000
|
||
005A 0000
|
||
005C 0000 93 dw 0,0,0,0, 0,0,0,0, 0,0,0,0
|
||
005E 0000
|
||
0060 0000
|
||
0062 0000
|
||
0064 0000
|
||
0066 0000
|
||
0068 0000
|
||
006A 0000
|
||
006C 0000
|
||
006E 0000
|
||
0070 0000
|
||
0072 0000
|
||
0074 3A01 R 94 dw offset stk_top
|
||
0076 0000 95 dw 0,0,0,0, 0,0,0,0
|
||
0078 0000
|
||
007A 0000
|
||
007C 0000
|
||
007E 0000
|
||
0080 0000
|
||
0082 0000
|
||
0084 0000
|
||
0086 0000 96 u_wrkseg dw 0
|
||
0088 0000 97 u_retseg dw 0
|
||
00A0 98 org rsp_uda + insysoff
|
||
00A0 01 99 u_insys db 1
|
||
00A1 00 100 db 0 ;u_stat_save
|
||
00A2 0000 101 dw 0 ;ccb
|
||
00A4 0000 102 dw 0 ;lcb
|
||
00A6 00 103 db 0 ;print string delimiter
|
||
104
|
||
00A7 (147 105 db 93h dup (0cch) ;fill rest of UDA stack with INT3s
|
||
CC
|
||
)
|
||
106
|
||
013A 0000 E 107 stk_top dw plmstart
|
||
013C 0000 108 dw 0,0 ;segment, flags: unknown
|
||
013E 0000
|
||
109
|
||
---- 110 dats ends
|
||
111 end
|
||
|
||
ASSEMBLY COMPLETE, NO ERRORS FOUND
|
||
|