Files
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

132 lines
7.7 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

C P / M 6 8 0 0 0 A s s e m b l e r Revision 02.03 Page 1
Source File: ccpif.s
1 *************************************************************************
2 * *
3 * CPM68K INTERFACE MODULE FOR *
4 * THE CONSOLE COMMAND PROCESSOR *
5 * *
6 * THIS IS THE DUAL-PROCESSOR,ROMABLE CP/M-68K SYSTEM *
7 * ================================================== *
8 * *
9 * (C) Copyright Digital Research 1983 all rights reserved *
10 * *
11 *************************************************************************
12
13
14 .globl _bios1
15 .globl _bdos
16 .globl _load68k
17 .globl _load_tbl
18 .globl init_tbl
19 .globl _load_try
20 .globl _autorom
21 .globl flags
22 .globl TPAB
23 .globl stack
24 .globl _bdosini
25 .globl _main
26 .globl _submit
27 .globl _morecmds
28 .globl _autost
29 .globl _usercmd
30 .globl _init
31 .globl _ccp
32 .globl _patch
33 .globl cpm
34
35 00000000 .text
36 cpm:
37 00000000 4EF900000038 jmp.l ccpstart * start ccp with possible initial command
38 00000006 4EF900000032 jmp.l ccpclear * clear auto start flag
39
40
41
42 00000000 .bss
43 00000000 _autost: .ds.b 1 * autostart command flag
44 00000001 _usercmd: .ds.b 130 * user command buffer
45
46 00000084 .text
46 0000000C
47 0000000C 434F505952494748 copy: .dc.b 'COPYRIGHT (C) 1982, Digital Research '
47 00000014 5420284329203139
47 0000001C 38322C2044696769
47 00000024 74616C2052657365
47 0000002C 6172636820
48
49
50 00000032 .text
C P / M 6 8 0 0 0 A s s e m b l e r Revision 02.03 Page 2
Source File: ccpif.s
50 00000032
51 ccpclear:
52 00000032 423900000000 clr.b _autost * clear the autostart flag
53
54 ccpstart:
55 00000038 4FF900000000 lea stack,sp * set up the stack pointer
56 0000003E 423900000000 clr.b _autost * clear the auto start flag
57 00000044 4EB900000000 jsr _init * call bios init
58 0000004A 33C000000084 move.w d0,dskuser * save user # & disk
59 *
60 *
61 * ROM SYSTEM INITIALIZATION
62 * OF BSS VARIABLES
63 *
64 *
65
66 00000050 423900000000 clr.b _load_try
67 00000056 423900000086 clr.b _submit
68 0000005C 423900000088 clr.b _morecmds
69 00000062 13FC000100000000 move.b #$1,_autorom
70 0000006A 427900000000 clr.w flags
71 00000070 427900000000 clr.w TPAB
72 00000076 4EB900000000 jsr init_tbl
73
74
75
76 0000007C 4EB900000000 jsr _bdosini * do bdos init
77 00000082 303C0020 move.w #32,d0 * get user bdos func #
78 00000086 4281 clr.l d1 * clear out d1
79 00000088 123900000084 move.b dskuser,d1 * get the user #
80 0000008E 4E42 trap #2 * set the user number
81 00000090 4280 clr.l d0 * clear d0
82 00000092 303C000E move.w #14,d0 * select function
83 00000096 4281 clr.l d1 * clear d1
84 00000098 323900000084 move.w dskuser,d1 * get disk to be selected
85 0000009E 024100FF andi #$0ff,d1 * mask off the user #
86 000000A2 4E42 trap #2 * select the disk
87
88 _ccp:
89 000000A4 4FF900000000 lea stack,sp * set up the stack pointer
90 000000AA 4EB900000000 jsr _main * call the CCP
91 000000B0 60F2 bra _ccp
92
93 00000084 .bss
94 .even
95
96 00000084 dskuser: .ds.w 1
97 .even
98 00000086 _submit: .ds.b 1
99 00000088 .even
99 00000088
100 00000088 _morecmds: .ds.b 1
101 0000008A .even
101 0000008A
102 0000008A _patch .ds.l 25
C P / M 6 8 0 0 0 A s s e m b l e r Revision 02.03 Page 3
Source File: ccpif.s
103 000000EE .end
C P / M 6 8 0 0 0 A s s e m b l e r Revision 02.03 Page 4
Source File: ccpif.s
S y m b o l T a b l e
TPAB ******** EXT _autorom ******** EXT _autost 00000000 BSS _bdos ******** EXT
_bdosini ******** EXT _bios1 ******** EXT _ccp 000000A4 TEXT _init ******** EXT
_load68k ******** EXT _load_tb ******** EXT _load_tr ******** EXT _main ******** EXT
_morecmd 00000088 BSS _patch 0000008A BSS _submit 00000086 BSS _usercmd 00000001 BSS
ccpclear 00000032 TEXT ccpstart 00000038 TEXT copy 0000000C TEXT cpm 00000000 TEXT
dskuser 00000084 BSS flags ******** EXT init_tbl ******** EXT stack ******** EXT