forked from amberisvibin/chibi-pc09
127 lines
3.4 KiB
HTML
127 lines
3.4 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<title>CHIBI PC-09 Technical Specification</title>
|
|
<meta charset='utf-8'/>
|
|
<link rel="stylesheet" type="text/css" href="./chibi_pc-09_technical_specification.html_files/github-markdown.css">
|
|
<style>
|
|
.markdown-body {
|
|
box-sizing: border-box;
|
|
min-width: 200px;
|
|
max-width: 980px;
|
|
margin: 0 auto;
|
|
padding: 45px;
|
|
}
|
|
</style>
|
|
<script>
|
|
window.onload = function() {
|
|
if (document.querySelector("script[type=\"math/tex; mode=display\"]") !== null) {
|
|
var mathjax = document.createElement("script");
|
|
mathjax.src = "https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML";
|
|
document.head.appendChild(mathjax);
|
|
}
|
|
if (document.getElementsByTagName("code").length !== 0) {
|
|
var highlight = document.createElement("script");
|
|
var highlightcss = document.createElement("link");
|
|
highlight.src = "http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.2.0/highlight.min.js";
|
|
highlightcss.rel = "stylesheet";
|
|
highlightcss.href = "http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.2.0/styles/github.min.css";
|
|
highlight.onload = function() {hljs.initHighlighting();};
|
|
document.head.appendChild(highlight);
|
|
document.head.appendChild(highlightcss);
|
|
}
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<article class="markdown-body">
|
|
<h1 id="chibi-pc-09-technical-specification">CHIBI PC-09 Technical Specification</h1>
|
|
<p>5-17-21 Amber Zeller</p>
|
|
<h2 id="quick-specs">Quick Specs</h2>
|
|
<h4 id="cpu">CPU</h4>
|
|
<p>1, 1.5, 2 MHz Motorola 6809</p>
|
|
<h4 id="memory">Memory</h4>
|
|
<p>64k SRAM on external card for optional MMU capability. Seperated into 2k blocks, numbered 0-31. Only 62k of memory is accessible, due to the I/O block.</p>
|
|
<h4 id="i-o">I/O</h4>
|
|
<p>2k block, position 30. Addresses EFFF-F7FE. Further subdivided into 128 devices of 16 addresses each. </p>
|
|
<h2 id="address-space-diagram">Address Space Diagram</h2>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Address Range</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0000 - 07FF</td>
|
|
<td>First Kernel Block</td>
|
|
</tr>
|
|
<tr>
|
|
<td>0800 - EFFE</td>
|
|
<td>Standard Memory Blocks</td>
|
|
</tr>
|
|
<tr>
|
|
<td>EFFF - F7FE</td>
|
|
<td>I/O Block</td>
|
|
</tr>
|
|
<tr>
|
|
<td>F7FF - FFFF</td>
|
|
<td>Reset Vectors</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h2 id="i-o-block-description">I/O Block Description</h2>
|
|
<p>11 bits per block</p>
|
|
<p>128 devices are possible, though will likely never be used. </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Bits</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0-6</td>
|
|
<td>Device selection</td>
|
|
</tr>
|
|
<tr>
|
|
<td>7-10</td>
|
|
<td>Address selection</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h2 id="expansion-card-description">Expansion Card Description</h2>
|
|
<p>Byte 0 of every card should contain a 'type' descriptor.</p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Type Descriptor</th>
|
|
<th>Description</th>
|
|
<th>Example</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>00</td>
|
|
<td>Block Storage</td>
|
|
<td>SD Card</td>
|
|
</tr>
|
|
<tr>
|
|
<td>01</td>
|
|
<td>ANSI I/O Stream</td>
|
|
<td>UART</td>
|
|
</tr>
|
|
<tr>
|
|
<td>02</td>
|
|
<td>ANSI Compatible Graphics Device</td>
|
|
<td>VGA64</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
</article>
|
|
</body>
|
|
</html>
|