forked from commanderx16/x16-docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
commander-x16-wikipedia-entry.txt
126 lines (107 loc) · 6.9 KB
/
commander-x16-wikipedia-entry.txt
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
{{short description|Home computer}}
{{Use dmy dates|date=July 2013}}
{{Infobox information appliance
| name = Commander X16
| logo =
| image =
| caption = <!-- include if image is not a logo -->
| developer =
| manufacturer =
| carrier =
| type = [[Retrocomputing]]
| generation =
| releasedate = n/a
| lifespan = n/a
| price = TBD
| discontinued = n/a
| unitssold = n/a
| unitsshipped = n/a
| media =
| os = {{nowrap|Commodore [[KERNAL]]}}<br>{{nowrap|[[Commodore BASIC]]}}
| power =
| cpu = [[WDC 65C02]] {{nowrap|@ 8 MHz}} {{cite web|title=Commander X16 FAQ|url=https://www.commanderx16.com/forum/index.php?/about-faq/}}
| storage = [[SD card]], [[floppy disk]]
| memory = {{nowrap|512 [[kilobyte|KiB]] [[read-only memory|ROM]]}} + {{nowrap|40 KiB [[random-access memory|RAM]]}} + {{nowrap|512 KiB banked [[random-access memory|RAM]]}} (expandable to 2 MiB)
| display = [[VGA]]
| graphics = Custom FGPA
| sound = TBD
| input = SD card, Floppy disk, GPIO
| location = n/a
| controllers = SNES x4
| camera = No
| touchpad = No
| connectivity = No
| service = No
| dimensions = TBD
| weight = TBD
| topgame = TBD
| compatibility = {{nowrap|Commodore [[KERNAL]]}}<br>{{nowrap|[[Commodore BASIC]]}}
| predecessor = n/a
| successor = n/a
| related =
| website = http://commanderx16.com
}}
The '''Commander X16''' (colloquially known as the '''X-16''') is an [[8-bit]] [[Retrocomputing]] [[home computer]]. It is the brainchild of '''The 8-Bit Guy''', who wanted an accessible and affordable 8-bit hobbyist platform. It is intended not only as an educational tool, but also to solve some of the issues of finding an 8-bit system to tinker with today; namely ever-increasing costs, auction site price gouging/sniping, and unreliability of 30-year old hardware. The X16 is made entirely with off-the-shelf modern parts, ensuring availability without reliability issues. It has a real 8-bit CPU rather than using emulation or an FPGA recreation of a processor. It is intended to be inexpensive enough to promote a critical mass of users, to create its own software ecosystem, yet be simple enough that a single person can understand the entire system.<ref>{{cite web|title=Commander X16 FAQ|url=https://www.commanderx16.com/forum/index.php?/about-faq/}}</ref>
==History==
===Origin===
In 2019, the popular YouTube program '''The 8-Bit Guy''' posted two videos entitled, where he discussed hardware considerations in building a modern 8-bit computer using off-the-shelf components. By the end of the second video, he had settled on a 6502-derived CPU, the [[Commodore]] [[KERNAL]], an architecture based loosely on the [[VIC-20]], and potential sound chips.<ref>{{cite web|title=My Dream Computer - Part 1|url=https://www.youtube.com/watch?v=ayh0qebfD2g}}</ref><ref>{{cite web|title=My Dream Computer - Part 2|url=https://www.youtube.com/watch?v=sg-6Cjzzg8s}}</ref>
While the last [[Commodore]] 8-bit computers had [[BASIC]] 7.0, the '''X16''' defaulted to version 2.0, but grew the feature sets of both BASIC and the KERNAL.<ref>{{cite web|title=Commander X16 Programmer's Reference|url=https://github.com/commanderx16/x16-docs/blob/master/Commander%20X16%20Programmer's%20Reference%20Guide.md}}</ref>
===Applications===
The X16 is expected to ship with an augmented Commodore KERNAL, BASIC (with a DOS wedge, among other things), a machine language monitor, an assembly language editor, and more.<ref>{{cite web|title=Commander X16 FAQ|url=https://www.commanderx16.com/forum/index.php?/about-faq/}}</ref><ref>{{cite web|title=My Dream Computer - Part 2|url=https://www.youtube.com/watch?v=sg-6Cjzzg8s}}</ref>
==Technical specifications==
The X16 ships with {{nowrap|40 KB}} [[Static random-access memory|RAM]]. {{nowrap|1 KB}} of this used by the system for I/O. The 512K [[read-only memory|ROM]] is split into banks of 16K; Bank 0 holds the Commodore KERNAL and BASIC. The X16 also ships with 512K "high" [[Static random-access memory|RAM]], which is split into banks of 8K. High RAM is expandable up to 2MiB.
=== Ports and sockets ===
The X16 has four expansion slots with access to the CPU databus. There is no datasette port, and device 0 is re-purposed for the SD card. The X16 also has an IEC connector, and can connect to a Commodore disk drive. It also has two exposed SNES game controller connectors, with two internal pin headers that can support two more connectors. It accepts a PS/2 keyboard and mouse.<ref>{{cite web|title=Commander X16 FAQ|url=https://www.commanderx16.com/forum/index.php?/about-faq/}}</ref>
=== Graphics ===
The graphics capabilities of the X16 are provided by the single FGPA, code named "VERA". This chip has multiple output formats, at a fixed resolution of 640x480@60HZ. It supports two layers with various tile and bitmap modes, and up to 128 sprites. Its color palette is 256 colors, using a total range of 4096 colors.<ref>{{cite web|title=Commander X16 FAQ|url=https://www.commanderx16.com/forum/index.php?/about-faq/}}</ref>
=== Sound ===
Audio is not finalized; there are three separate sound generators being considered. For basic sound, the VERA chip itself has a programmable sound generator based loosely on the SID; the SAA1099 is also being looked at. For MIDI-like sound, the Yamaha YM2151 is being considered.<ref>{{cite web|title=Commander X16 FAQ|url=https://www.commanderx16.com/forum/index.php?/about-faq/}}</ref>
=== Memory Map ===
{| class="wikitable"
|+ Memory map<ref>{{cite web|title=Commander X16 memory map (long)|url=https://www.c64-wiki.com/wiki/Commander_X16}}</ref>
! Address || Size [in KB] || Description
|-
|align="right"| 0x0000 <!--0x0001-->
|align="right"| - || Bank control bytes
|-
|align="right"| 0x0002 <!--0x0021-->
|align="right"| - || 16 bit ABI registers
|-
|align="right"| 0x0022 <!--0x007f-->
|align="right"| - || User zero page
|-
|align="right"| 0x080<!--0x0ff-->
|align="right"| - || KERNAL and BASIC zero page variables
|-
|align="right"| 0x0100 <!--0x01ff-->
|align="right"| - || Accumulator stack
|-
|align="right"| 0x0200 <!--0x9eff-->
|align="right"| 38 || BASIC program/variable RAM
|-
|align="right"| 0x9F00 <!--0x9FFF-->
|align="right"| 0.25 || I/O registers
|-
|align="right"| 0xA000<!--0xBFFF-->
|align="right"| 8 || RAM Bank window
|-
|align="right"| 0xC000<!--0xFFFF-->
|align="right"| 16 || ROM Bank window
|}
==Reception==
TBD
==See also==
* Commander X16 Emulator <ref>{{cite web|title=My Dream Computer - Part 2|url=https://github.com/commanderx16/x16-emulator}}</ref>
==References==
{{Reflist}}
{{refbegin}}
{{refend}}
==Further reading==
*[[Commodore International#Computers]]
==External links==
{{Commons category}}
*[https://github.com/commanderx16/x16-emulator] Commander X16 Emulator
{{CBM computers}}
{{DEFAULTSORT:Commander X16}}
[[Category:Commander X16| ]]
[[Category:6502-based home computers]]