-
Notifications
You must be signed in to change notification settings - Fork 8
/
6809_subroutines_code.htm
143 lines (116 loc) · 5.4 KB
/
6809_subroutines_code.htm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=utf-1">
<link rel="stylesheet" href="../../../style.css">
<title>The Program Section</title>
<style>
body { color: black; background: white; font-family: arial;}
p {color:black; }
h1 {color:blue; text-align: center }
h2 {color:blue; }
h3 {color:blue; }
h4 {color:blue; }
h5 {color:blue; }
h6 {color:blue; }
</style>
</head>
<body>
<h1>The Program Section</h1>
<h2><a name="Code Conversion">Code
Conversion</a></h2>
<blockquote>
<p><b><a href="6809_BN2BCD.s">1A Binary to BCD Conversion</a></b><br>
<b><a href="6809_BCD2BN.s">1B BCD to Binary Conversion</a></b><br>
<b><a href="6809_BN2HEX.s">1C Binary to Hexadecimal ASCII Conversion</a></b><br>
<b><a href="6809_HEX2BN.s">1D Hexadecimal ASCII to Binary Conversion</a></b><br>
<b><a href="6809_BN2DEC.s">1E Conversion of a Binary Number to a String of ASCII Decimal Digits</a></b><br>
<b><a href="6809_DEC2BN.s">1F Conversion of a String of ASCII Decimal Digits to a Binary Number</a></b>
</blockquote>
<h2><a name="Array Manipulation and Indexing">Array Manipulation and Indexing</a></h2>
<blockquote>
<p><b><a href="6809_MFILL.s">2A Memory Fill</a><br>
<a href="6809_BLKMOV.s">2B Block Move</a><br>
<a href="6809_D2BYTE.s">2C Two-Dimensional Byte Array Indexing</a><br>
<a href="6809_D2WORD.s">2D Two-Dimensional Word Array Indexing</a><br>
<a href="6809_NDIM.s">2E N-Dimensional Array Indexing</a></b></p>
</blockquote>
<h2><a name="Arithmetic">Arithmetic</a>
</h2>
<blockquote>
<p><b><a href="6809_MUL16.s">3A 16-Bit Multiplication</a><br>
<a href="6809_DIV16.s">3B 16-Bit Division</a><br>
<a href="6809_MPBADD.s">3C Multiple-Precision Binary Addition</a><br>
<a href="6809_MPBSUB.s">3D Multiple-Precision Binary Subtraction</a><br>
<a href="6809_MPBMUL.s">3E Multiple-Precision Binary Multiplication</a><br>
<a href="6809_MPBDIV.s">3F Multiple-Precision Binary Division</a><br>
<a href="6809_MPBCMP.s">3G Multiple-Precision Binary Comparison</a><br>
<a href="6809_MPDADD.s">3H Multiple-Precision Decimal Addition</a><br>
<a href="6809_MPDSUB.s">3I Multiple-Precision Decimal Subtraction</a><br>
<a href="6809_MPDMUL.s">3J Multiple-Precision Decimal Multiplication</a><br>
<a href="6809_MPDDIV.s">3K Multiple-Precision Decimal Division</a><br>
<a href="6809_MPDCMP.s">3L Multiple-Precision Decimal Comparison</a></b></p>
</blockquote>
<h2><a name="Bit Manipulation and Shifts">Bit Manipulation and Shifts</a></h2>
<blockquote>
<p><b><a href="6809_BFE.s">4A Bit Field Extraction</a><br>
<a href="6809_BFI.s">4B Bit Field Insertion</a></br>
<a href="6809_MPASR.s">4C Multiple-Precision Arithmetic Shift Right</a><br>
<a href="6809_MPLSL.s">4D Multiple-Precision Logical Shift Left</a><br>
<a href="6809_MPLSR.s">4E Multiple-Precision Logical Shift Right</a><br>
<a href="6809_MPRR.s">4F Multiple-Precision Rotate Right</a><br>
<a href="6809_MPRL.s">4G Multiple-Precision Rotate Left</a></b></p>
</blockquote>
<h2><a name="String Manipulation">String Manipulation</a></h2>
<blockquote>
<p><b><a href="6809_STRCMP.s">5A String Comparison</a><br>
<a href="6809_CONCAT.s">5B String Concatenation</a></b><br>
<b><a href="6809_POS.s">5C Find the Position of a Substring</a><br>
<a href="6809_COPY.s">5D Copy a Substring from a String</a><br>
<a href="6809_DELETE.s">5E Delete a Substring from a String</a><br>
<a href="6809_INSERT.s">5F Insert a Substring into a String</a><br>
<b><a href="6809_SPACES.s">5G Remove Excess Spaces from a String</a></b></p>
</blockquote>
<h2><a name="Array Operations">Array
Operations</a></h2>
<blockquote>
<p><b><a href="6809_ASUM8.s">6A 8-Bit Array Summation</a><br>
<a href="6809_ASUM16.s">6B 16-Bit Array Summation</a><br>
<a href="6809_MAXELM.s">6C Find Maximum Byte-Length Element</a><br>
<a href="6809_MINELM.s">6D Find Minimum Byte-Length Element</a><br>
<a href="6809_BINSCH.s">6E Binary Search</a><br>
<a href="6809_QSORT.s">6F Quick Sort</a><br>
<a href="6809_RAMTST.s">6G RAM Test</a><br>
<a href="6809_JMPTAB.s">6H Jump Table</a></b></p>
</blockquote>
<h2><a name="Data Structure Manipulation">Data Structure Manipulation</a></h2>
<blockquote>
<p><b><a href="6809_Queue.s">7A Queue Manager</a><br>
<a href="6809_Stack.s">7B Stack Manager</a><br>
<a href="6809_Singly-linked_List.s">7C Singly-linked List Manager</a><br>
<a href="6809_Doubly-linked_List.s">7D Doubly-linked List Manager</a></b></p>
</blockquote>
<h2><a name="Input/Output">Input/Output</a></h2>
<blockquote>
<p><b><a href="6809_RDLINE.s">8A Read a Line of Characters from a Terminal</a><br>
<a href="6809_WRLINE.s">8B Write a Line of Characters to an Output Device</a><br>
<a href="6809_Parity.s">8C Parity Checking</a><br>
<a href="6809_CRC16.s">8D CRC-16 Checking and Generation</a><br>
<a href="6809_IOHDLR.s">8E I/O Device Table Handler</a><br>
<a href="6809_IPORTS.s">8F Initialize I/O Ports</a><br>
<a href="6809_DELAY.s">8G Delay Milliseconds</a></b></p>
</blockquote>
<h2><a name="Interrupts">Interrupts</a></h2>
<blockquote>
<p><b><a href="6809_SINTIO.s">9A Unbuffered
Interrupt-Driven Input/Output Using a 6850 ACIA</a><br>
<a href="6809_PINTIO.s">9B Unbuffered
Interrupt/Driven Input/Output Using a 6821 PIA</a><br>
<a href="6809_SINTB.s">9C Buffered
Interrupt-Driven Input/Output Using a 6850 ACIA</a><br>
<a href="6809_CLOCK.s">9D Real-Time Clock and
Calendar</a></b></p>
</blockquote>
<pre> </pre>
</body>
</html>