Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Datapoint 2200
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{DEFAULTSORT:}}{{Short description|Personal computer and terminal}} {{Use mdy dates|date=October 2018}} {{Infobox information appliance | name = Datapoint 2200 | image = Datapoint-2200.jpg | caption = Datapoint 2200 computer | manufacturer = [[Computer Terminal Corporation]] | type = [[Computer terminal#"Intelligent" terminals|Intelligent terminal]], [[personal computer]] | releasedate = {{Start date and age|1970|05}} | discontinued = {{Start date and age|1979}}<ref>{{cite web|url=https://www.old-computers.com/museum/computer.asp?c=596|title=Datapoint Corporation Datapoint 2200|website=OLD-COMPUTERS.COM : The Museum}}</ref> | os = Datapoint O/S | cpu = serial, discrete logic implementation of the [[Intel 8008]] instruction set | memory = 2 [[kilobyte|KB]] standard; expandable to 16 KB | display = Text only, 80×12 characters }} The '''Datapoint 2200''' was a mass-produced programmable [[computer terminal|terminal]] usable as a [[computer]], designed by [[Datapoint|Computer Terminal Corporation (CTC)]] founders Phil Ray and Gus Roche<ref name="wood">{{cite magazine|first=Lamont|last=Wood|url=https://www.computerworld.com/article/2532590/forgotten-pc-history--the-true-origins-of-the-personal-computer.html|title=Forgotten PC history: The true origins of the personal computer|magazine=Computerworld|date=August 8, 2008}}</ref> and announced by CTC in June 1970 (with units shipping in 1971). It was initially presented by CTC as a versatile and cost-efficient terminal for connecting to a wide variety of [[mainframe computer|mainframe]]s by loading various terminal [[emulator|emulation]]s from tape rather than being hardwired as most contemporary terminals, including their earlier [[Datapoint 3300]].<ref name="lamont-wood-book">{{cite book|title=Datapoint: The Lost Story of the Texans Who Invented the Personal Computer|first=Lamont|last=Wood|url=https://books.google.com/books?id=idTeAAAAQBAJ&pg=PT102|publisher=Hugo House Publishers, Ltd.|year=2013|isbn=9781936449361|pages=102–103}}</ref> Dave Gust, a CTC salesman, realized that the 2200 could meet [[Pillsbury (brand)|Pillsbury Foods]]'s need for a small computer in the field, after which the 2200 was marketed as a stand-alone computer.<ref name="lamont-wood-book"/> Its industrial designer [[John Frassanito|John "Jack" Frassanito]] has later claimed that Ray and Roche always intended the Datapoint 2200 to be a full-blown [[personal computer]], but that they chose to keep quiet about this so as not to concern investors and others.<ref name="wood" /><ref name="weinkrantz">{{cite web|first=Allen|last=Weinkrantz|url=http://www.alanweinkrantz.com/san-antonio-has-claim-as-the-birthplace-of-the-personal-computer-read-all-about-it/|title=San Antonio Has Claim As The Birthplace of the Personal Computer. Read All About It.|date=June 2, 2009|archive-url=https://web.archive.org/web/20160304040904/http://www.alanweinkrantz.com/san-antonio-has-claim-as-the-birthplace-of-the-personal-computer-read-all-about-it/|archive-date=March 4, 2016}}</ref> The terminal's multi-chip [[central processing unit|CPU]] (processor)'s [[instruction set architecture|instruction set]] became the basis of the [[Intel 8008]] instruction set, which inspired the [[Intel 8080]] instruction set and the [[x86]] instruction set used in the processors for the original [[IBM Personal Computer|IBM PC]] and its descendants. == Technical description == {| class="infobox" style="font-size:88%;width:30em;" |+ Datapoint 2200 version I registers |- | style="text-align:center;"| <sup>1</sup><sub>2</sub> | style="text-align:center;"| <sup>1</sup><sub>1</sub> | style="text-align:center;"| <sup>1</sup><sub>0</sub> | style="text-align:center;"| <sup>0</sup><sub>9</sub> | style="text-align:center;"| <sup>0</sup><sub>8</sub> | style="text-align:center;"| <sup>0</sup><sub>7</sub> | style="text-align:center;"| <sup>0</sup><sub>6</sub> | style="text-align:center;"| <sup>0</sup><sub>5</sub> | style="text-align:center;"| <sup>0</sup><sub>4</sub> | style="text-align:center;"| <sup>0</sup><sub>3</sub> | style="text-align:center;"| <sup>0</sup><sub>2</sub> | style="text-align:center;"| <sup>0</sup><sub>1</sub> | style="text-align:center;"| <sup>0</sup><sub>0</sub> | ''(bit position)'' |- |colspan="15" | '''Main registers''' |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| A | style="width:auto; background:white; color:black;"| '''A'''ccumulator |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| B | style="background:white; color:black;"| '''B''' register |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| C | style="background:white; color:black;"| '''C''' register |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| D | style="background:white; color:black;"| '''D''' register |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| E | style="background:white; color:black;"| '''E''' register |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| H | style="background:white; color:black;"| '''H''' register ''(indirect)'' |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="5"| | style="text-align:center;" colspan="8"| L | style="background:white; color:black;"| '''L''' register ''(indirect)'' |- |colspan="15" | '''Program counter''' |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| P | style="background:white; color:black;"| '''P'''rogram '''C'''ounter |- |colspan="15" | '''15-level push-down address stack''' |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| AS | style="background:white; color:black;"| Call level 1 |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| AS | style="background:white; color:black;"| Call level 2 |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| AS | style="background:white; color:black;"| Call level 3 |- | style="text-align:center;" colspan="13"| ... | style="background:white; color:black;"| |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| AS | style="background:white; color:black;"| Call level 13 |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| AS | style="background:white; color:black;"| Call level 14 |- style="background:silver;color:black" | style="text-align:center;" colspan="13"| AS | style="background:white; color:black;"| Call level 15 |- |colspan="15" | '''Flags''' |- style="background:silver;color:black" | style="text-align:center; background:white" colspan="9" | | style="text-align:center;"| [[Carry flag|C]] | style="text-align:center;"| [[Parity flag|P]] | style="text-align:center;"| [[Zero flag|Z]] | style="text-align:center;"| [[Sign flag|S]] | style="background:white; color:black" | Flags |} The Datapoint 2200 had a built-in full-travel [[computer keyboard|keyboard]], a built-in 12-line, 80-column [[green-screen display|green screen]] monitor, and two 47 character-per-inch [[cassette tape#data|cassette tape]] drives each with 130 [[kilobyte|KB]] capacity. Its size, {{convert|9+5/8|x|18+1/2|x|19+5/8|in|cm|abbr=on}}, and shape—a box with protruding keyboard—approximated that of an [[IBM Selectric]] [[typewriter]].<ref name="2200ref" /> Initially, a [[Diablo Data Systems|Diablo]] 2.5 MB 2315-type removable cartridge [[hard disk drive]] was available, along with [[modem]]s, several types of [[serial interface]], [[parallel interface]], [[Printer (computing)|printers]] and a [[punched card]] reader. Later, an 8-inch [[floppy disk]] drive was also made available, along with other, larger [[hard disk]] drives. An industry-compatible 7/9-track (user selectable) magnetic tape drive was available by 1975. In late 1977, Datapoint introduced [[ARCNET]] local area networking. The original Type 1 2200 shipped with 2 [[kilobyte]]s (KiB) of serial shift register [[main memory]], expandable to 8 KiB. The Type 2 2200 used denser 1 [[kilobit|kbit]] [[random-access memory|RAM]] chips, giving it a default 4 KiB of memory, expandable to 16 KiB. Its starting price was around US$5,000 ({{Inflation|US|5000|1971|r=-3|fmt=eq}}), and a full 16 KiB Type 2 2200 had a list price of just over $14,000. The 8-bit processor architecture that CTC designed for the Datapoint 2200 was implemented in four distinct ways, all with nearly identical instruction sets, but very different internal [[microarchitecture]]s: CTC's original design that communicated data serially, CTC's parallel design, the Texas Instruments TMC 1795, and the Intel 8008.<ref>{{cite journal |first=Ken |last=Shirriff |url=https://spectrum.ieee.org/the-surprising-story-of-the-first-microprocessors |title=The Surprising Story of the First Microprocessors |journal=[[IEEE Spectrum]] |date=August 30, 2016|volume=53 |issue=9 |pages=48–54 |doi=10.1109/MSPEC.2016.7551353 |s2cid=32003640 |url-access=subscription }}</ref> The 2200 models were succeeded by the 5500, 1100, 6600, 3800/1800, 8800, etc. The fact that most laptops and cloud computers today store numbers in [[little-endian]] format is carried forward from the original Datapoint 2200. Because the original Datapoint 2200 had a [[Serial computer|serial processor]], it needed to start with the lowest bit of the lowest byte in order to handle carries. Microprocessors descended from the Datapoint 2200 (the 8008, Z80, and the [[x86]] chips used in most laptops and cloud computers today) kept the little-endian format used by that original Datapoint 2200.<ref name="shirriff" /><ref>{{cite web |url=http://archive.computerhistory.org/resources/text/Oral_History/Intel_8008/Intel_8008_1.oral_history.2006.102657982.pdf |title=Oral History Panel on the Development and Promotion of the Intel 8008 Microprocessor|page=5 |date=September 21, 2006}}</ref> ==Processor== The original design called for a single-chip [[8-bit]] [[microprocessor]] for the [[central processing unit|CPU]], rather than a processor built from discrete [[transistor-transistor logic|TTL]] modules as was conventional at the time. In 1969, CTC contracted two companies, [[Intel]] and [[Texas Instruments]] (TI), to make the chip. TI was unable to make a reliable part and dropped out. Intel was unable to make CTC's deadline. Intel and CTC renegotiated their contract, ending up with CTC keeping its money and Intel keeping the eventually completed processor.<ref name="wood"/> CTC released the Datapoint 2200 using about 100 [[Transistor–transistor logic|TTL]] components ([[Integrated circuit#SSI|SSI/MSI]] chips) instead of a microprocessor, while Intel's single-chip design, eventually designated the [[Intel 8008]], was finally released in April 1972.<ref>{{cite book| last=Thompson Kaye|first=Glynnis |title=A Revolution in Progress - A History to Date of Intel |publisher=Intel Corporation |year=1984 |pages=13 |url=https://www.intel.com/Assets/PDF/General/15yrs.pdf}} "The 8-bit 8008 microprocessor had been developed in tandem with the 4004 and was introduced in April 1972. It was originally intended to be a custom chip for Computer Terminals Corp. of Texas, later to be known as Datapoint." "As it developed, CTC rejected the 8008 because it was too slow for the company's purpose and required too many supporting chips."</ref> Possibly because of their speed advantages compared to MOS circuits, Datapoint continued to build processors out of TTL chips until the early 1980s.<ref name="shirriff">{{cite web|first=Ken|last=Shirriff|url=https://www.righto.com/2015/05/the-texas-instruments-tmx-1795-first.html|title=The Texas Instruments TMX 1795: the first, forgotten microprocessor}}</ref> Nonetheless, the 8008 was to have a seminal importance. It was the basis of Intel's line of 8-bit CPUs, which was followed by their assembly language compatible 16-bit CPUs — the first members of the [[x86]] family, as the instruction set was later to be known. Already successful and widely used, the x86 architecture's further rise after the success in 1981 of the original IBM Personal Computer with an [[Intel 8088]] CPU means that most desktop, laptop, and server computers in use {{As of|2013|alt=today}} have a CPU instruction set directly based on the work of CTC's engineers. The instruction set of the highly successful [[Zilog Z80]] microprocessor can also be traced back to the Datapoint 2200 as the Z80 was backwards-compatible with the [[Intel 8080]]. More immediately, the Intel 8008 was adopted by very early [[microcomputer]]s including the [[SCELBI]], [[Mark-8]], [[MCM/70]] and [[Micral N]]. == Instruction set == Instructions are one to three bytes long, consisting of an initial opcode byte, followed by up to two bytes of operands which can be an immediate operand or a program address. Instructions operate on 8-bits only; there are no 16-bit operations. There is only one mechanism to address data memory: indirect addressing pointed to by a concatenation of the H and L registers, referenced as M. The 2200 does, however, support 13-bit program addresses. It has automatic CALL and RETURN instructions for multi-level subroutine calls and returns which can be conditionally executed, like jumps. Direct copying may be made between any two registers or a register and memory. Eight math/logic functions are supported between the accumulator (A) and any register, memory, or an immediate value. Results are always deposited in A. Most instructions are executed in 16 μs, 24 μs, or a leisurely 520 μs when accessing M. The 520 μs represents the delay of the 2200's shift register memory to fully recirculate back to the next instruction. Branch type instructions take a variable amount of time (24 μs to 520 μs) depending on the distance of the branch. {|class="wikitable" style="text-align:center" |+Datapoint 2200 version I instruction set !colspan=8| Opcode ||colspan=2| Operands ||rowspan=2| Mnemonic || rowspan=2| Time μs ||rowspan=2| Description |- ! 7 || 6 || 5 || 4 || 3 || 2 || 1 || 0 || b2 || b3 |- | 0 || 0 || 0 || 0 || 0 || 0 || 0 || X || — || — ||align=left| HALT || — ||align=left| Halt |- | 0 || 0 || 0 || 0 || 0 || 0 || 1 || 0 || — || — ||align=left| SLC || 16 ||align=left| A<sub>1-7</sub> ← A<sub>0-6</sub>; A<sub>0</sub> ← Cy ← A<sub>7</sub> |- | 0 || 0 ||colspan=3|CC || 0 || 1 || 1 || — || — ||align=left| Rcc (RETURN conditional) || 16/† ||align=left| If cc true, P ← (stack) |- | 0 || 0 ||colspan=3|ALU || 1 || 0 || 0 || ''data'' || — ||align=left| AD AC SU SB ND XR OR CP ''data'' || 16 ||align=left| A ← A [ALU operation] data |- | 0 || 0 ||colspan=3|DDD || 1 || 1 || 0 || ''data'' || — ||align=left| Lr ''data'' (Load r with immediate data) || 16 ||align=left| DDD ← data (except M) |- | 0 || 0 || 0 || 0 || 0 || 1 || 1 || 1 || — || — ||align=left| RETURN || † ||align=left| P ← (stack) |- | 0 || 0 || 0 || 0 || 1 || 0 || 1 || 0 || — || — ||align=left| SRC || 16 ||align=left| A<sub>0-6</sub> ← A<sub>1-7</sub>; A<sub>7</sub> ← Cy ← A<sub>0</sub> |- | 0 || 1 ||colspan=3|CC || 0 || 0 || 0 || ''addlo'' || ''addhi'' ||align=left| Jcc ''add'' (JMP conditional) || 24/† ||align=left| If cc true, P ← add |- | 0 || 1 || 0 || 0 || 0 || 0 || 0 || 1 || — || — ||align=left| INPUT || 16 ||align=left| A ← input |- | 0 || 1 ||colspan=5|command || 1 || — || — ||align=left| EX ''command'' (external command)|| 16 ||align=left| command ← A (coded 8-31 only) |- | 0 || 1 ||colspan=3|CC || 0 || 1 || 0 || ''addlo'' || ''addhi'' ||align=left| Ccc ''add'' (CALL conditional) || 24/† ||align=left| If cc true, (stack) ← P, P ← add |- | 0 || 1 || 0 || 0 || 0 || 1 || 0 || 0 || ''addlo'' || ''addhi'' ||align=left| JMP ''add'' || † ||align=left| P ← add |- | 0 || 1 || 0 || 0 || 0 || 1 || 1 || 0 || ''addlo'' || ''addhi'' ||align=left| CALL ''add'' || † ||align=left| (stack) ← P, P ← add |- | 1 || 0 ||colspan=3|ALU ||colspan=3|SSS || — || — ||align=left| ADr ACr SUr SBr NDr XRr ORr CPr || 16/520 ||align=left| A ← A [ALU operation] SSS |- | 1 || 1 || 0 || 0 || 0 || 0 || 0 || 0 || — || — ||align=left| NOP || 16 ||align=left| No operation (Actually LAA) |- | 1 || 1 ||colspan=3|DDD ||colspan=3|SSS || — || — ||align=left| Lds (Load d with s) ||16/520 ||align=left| DDD ← SSS |- | 1 || 1 || 1 || 1 || 1 || 1 || 1 || 1 || — || — ||align=left| HALT || — ||align=left| Halt |- ! 7 || 6 || 5 || 4 || 3 || 2 || 1 || 0 || b2 || b3 || Mnemonic || Time μs || Description |- !colspan=13| |- !colspan=5|SSS DDD|| 2 || 1 || 0 ||colspan=2|CC ||ALU |- |colspan=5| A || 0 || 0 || 0 ||colspan=2|FC, C false ||align=left|ADr AD (A ← A + arg)||colspan=2|† Variable. Can be from 24 μs to 520 μs. |- |colspan=5| B || 0 || 0 || 1||colspan=2|FZ, Z false||align=left|ACr AC (A ← A + arg + Cy) |- |colspan=5| C || 0 || 1 || 0||colspan=2|FS, S false ||align=left|SUr SU (A ← A - arg) |- |colspan=5| D || 0 || 1 || 1||colspan=2|FP, P odd ||align=left|SBr SB (A ← A - arg - Cy) |- |colspan=5| E || 1 || 0 || 0||colspan=2|TC, C true ||align=left|NDr ND (A ← A ∧ arg) |- |colspan=5| H || 1 || 0 || 1||colspan=2|TZ, Z true ||align=left|XRr XR (A ← A ⊻ arg) |- |colspan=5| L || 1 || 1 || 0||colspan=2|TS, S true ||align=left|ORr OR (A ← A ∨ arg) |- |colspan=5| M || 1 || 1 || 1||colspan=2|TP, P even ||align=left|CPr CP (A - arg) |- !colspan=5|SSS DDD|| 2 || 1 || 0 ||colspan=2|CC ||ALU |} ===Performance=== Although the Datapoint 2200 version I is somewhat faster than an [[Intel 8008]] on register instructions, any reference to the 2200's shift-register memory incurs a large 520 μs delay. Also any JMP, CALL, or RETURN can incur a variable delay up to 520 μs depending on the distance to the new address. The parallel-architecture Datapoint 2200 version II is much faster than either.<ref name="2200ref"/><ref name="8008man">{{cite book |title=8008 8 Bit Parallel Central Processor Unit |date=November 1973 |publisher=Intel |pages=14, 17 |edition=Rev 4, Second Printing |url=http://www.bitsavers.org/components/intel/MCS8/Intel_8008_8-Bit_Parallel_Central_Processing_Unit_Rev4_Nov73.pdf |access-date=30 April 2024}}</ref> {|class="wikitable" style="text-align:center" |- !colspan=5|Instruction|| Description || Datapoint 2200 ver I μs|| 500 kHz Intel 8008 μs|| Datapoint 2200 ver II μs |- |colspan=5|ADB|| Add B to A || 16 || 20 || 3.2 |- |colspan=5|ADI nn|| Add nn immediate to A || 16 || 32 || 4.8 |- |colspan=5|ADM|| Add memory to A || 520 || 32 || 4.8 |- |colspan=5|JMP nnnn|| Jump to nnnn || 24-520 || 44 || 6.4 |- |colspan=5|CALL+RET|| Call and Ret combined|| 520 || 64 || 9.6 |- |colspan=5|Rcc (false)|| Conditional return not taken || 16 || 12 || 3.2 |} ===Code example=== The following Datapoint 2200 assembly source code is for a subroutine named MEMCPY that copies a block of data bytes from one location to another. Because the byte counter is only 8 bits, there is enough room to load all the subroutine parameters into the 2200's register file. Datapoint 2200 version I transfers 374 bytes per second using this routine. A 500 kHz Intel 8008 executes this code almost four times faster, transferring 1,479 bytes per second. Datapoint 2200 version II is much faster than either at 9,615 bytes per second.<ref name="2200ref">{{cite book |title=Datapoint 2200 Reference |date=1972 |publisher=Computer Terminal Corporation |url=http://www.bitsavers.org/pdf/datapoint/2200/2200_Reference_Manual.pdf |access-date=16 September 2024}}</ref><ref name="8008man" /> If more than an 8-bit count is needed, a more complicated copy routine with parameters held in memory would be required. <!--This routine was assembled by brain and might contain errors--> {| | <pre> 002000 317 002001 206 020 004 002004 371 002005 206 020 004 002010 302 002011 024 001 002013 320 002014 110 000 004 002017 007 002020 306 002021 364 002022 004 001 002024 340 002025 305 002026 353 002027 014 000 002031 330 002032 007 002032 </pre> | <syntaxhighlight lang="nasm"> ; MEMCPY -- ; Copy a block of memory from one location to another ; ; Entry parameters in registers ; HL: 13-bit address of source data block ; DE: 13-bit address of target data block ; C: 8-bit count of bytes to copy. (1 to 256 bytes) ORG 2000Q ;Code at 002000 octal MEMCPY LBM ;Read source byte into B CALL XCHGI ;Exchange HL<->DE and increment DE LMB ;Save B to target byte CALL XCHGI ;Exchange HL<->DE and increment DE LAC ;Decrement byte counter in C SU 1 LCA JFZ MEMCPY ;Continue for all bytes RETURN ;Exchange DE and HL register pairs then increment DE as 16 bits XCHGI LAL ;Exchange L and E LLE AD 1 ;and inc E, low byte of DE LEA LAH ;Exchange H and D LHD AC 0 ;proagate Cy into D LDA RETURN END </syntaxhighlight> |} == Credits == The original [[instruction set architecture]] was developed by [[Victor Poor]] and [[Harry Pyle]].<ref>{{cite web|url=http://history-computer.com/ModernComputer/Personal/Datapoint.html|title=History of Computers and Computing, Birth of the modern computer, Personal computer, Datapoint 2200|author=Dalakov, Georgi|date=April 23, 2014}}</ref> The [[transistor-transistor logic|TTL]] design they ended up using was made by [[Gary Asbell]]. [[Industrial design]] (how the box's exterior looked, including the company's logo) was done by Jack Frassanito.<ref name="wood"/> ==Specifications== '''Main unit''' * Processor: [[8-bit]] CPU [[instruction set architecture]] with a [[Bit-serial architecture|bit-serial]] [[microarchitecture]] assembled from standard [[transistor-transistor logic|TTL]] components. * Memory: 2K byte shift register memory, expandable to 8K (Version II: 4K RAM, expandable to 16K) * Display: Text only, 80×12 characters * Storage: 2 tape drives, optional 8-inch [[Shugart bus|Shugart]] floppy drive '''Peripherals''' Users of the 2200 and succeeding terminals eventually had several optional units to choose from. Among these were: * [[Modem]]s * [[Hard disk drive|Hard disks]] * [[Printer (computing)|Printers]] * [[ARCNET|ARCnet LAN]] == See also == * [[Sycor Inc.#Sycor 301 and 302 (1969)|Sycor 302]], a programmable terminal introduced in 1969 with similar characteristics to the 2200 * [[Kenbak-1]] == References == {{reflist|30em}} == External links == *[https://www.old-computers.com/museum/computer.asp?st=1&c=596 Information about the Datapoint 2200 at OLD-COMPUTERS.COM] – Including a picture of the terminal *[http://bitsavers.org/pdf/datapoint/2200/ Datapoint documentation] on bitsavers.org *[https://web.archive.org/web/20061219012629/http://home.comcast.net/~gordonepeterson2/schaller_dissertation_2004.pdf Page with links to a doctoral thesis about early microprocessor history, with many details about Datapoint's role] *[https://www.inventionandtech.com/content/man-who-invented-pc-1 The man who invented the PC] *[http://www.datapoint.org datapoint.org: Unofficial Datapoint Organization WEB site] [[Category:Character-oriented terminal]] [[Category:Early microcomputers]] [[Category:Personal computers]] [[Category:Computer-related introductions in 1970]] [[Category:8-bit computers]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:As of
(
edit
)
Template:Cite book
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite magazine
(
edit
)
Template:Cite web
(
edit
)
Template:Convert
(
edit
)
Template:Inflation
(
edit
)
Template:Infobox information appliance
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Use mdy dates
(
edit
)