カンサスシティスタンダード

カンサスシティスタンダード(Kansas City standard, KCS)またはバイトスタンダード(Byte standard)とは、コンパクトカセットテープに300 - 2400ビット/秒（300 - 2400ボー）のデータレートでデジタルデータを記録する（データレコーダ）フォーマットの一つである。1976年に初めて定義された。これは、1975年11月にミズーリ州カンザスシティで開催された『バイト』誌主催のシンポジウムで、安価な民生用カセットにマイクロコンピュータで作成したデジタルデータを保存するための標準規格を開発したことに端を発している。 基本規格のバリエーションの一つにCUTSがあり、これは300ビット/秒では同様だったが、オプションで1200ビット/秒のモードもあった。CUTSは、エイコーンやMSXなどで使用されていたデフォルトのエンコーディングだった。MSXにはさらに高い2400ビット/秒モードが追加されたが、それ以外は同様だった。CUTSの1200ビット/秒モードは、クロスプラットフォームのBASICODE（英語版）で使用される標準でもあった。 KCSはマイクロコンピュータ革命の初期から存在していたが、別のエンコーディングの発生を防ぐことはできなかった。当時のほとんどのホームコンピュータは、KCSと互換性のない独自のフォーマットを使用していた。 初期のマイクロコンピュータは、一般的にプログラムの保存に紙テープを使用していたが、紙テープは高価だった。 コンピュータコンサルタントのジェリー・オグディンは、紙テープの代わりにコンパクトカセットを使用し、音声で記録することを思いついた。彼はこのアイデアを『ポピュラーエレクトロニクス』誌の編集者であるレス・ソロモンに伝えた。彼も同様に紙テープに不満を持っていた。1975年9月、2人はHITS(Hobbyists' Interchange Tape System)についての記事を共著した。この方式は、1と0を表す2つのトーンを使用している。その後すぐに、多くのメーカーが同様のアプローチを使い始めたが、それぞれのシステムには互換性がなかった。 『バイト』誌を創刊したばかりのウェイン・グリーンは、全てのメーカーが一堂に会して、データレコーダの統一規格を作成することを望んでいた。彼は1975年11月7日から8日までの2日間、ミズーリ州カンザスシティで会議を開いた。この会議では、ドン・ランカスターが『TVタイプライター・クックブック』で提案した方式を採用することで合意した。会議の後、プロセッサ・テクノロジー社のリー・フェルゼンスタインとパーコム（英語版）社のハロルド・マウフがこの規格を執筆し、『バイト』誌に掲載された。 KCSカセットインターフェイスは、シリアルポートに接続するモデムに似ている。シリアルポートからの"1"と"0"は、周波数偏移変調(FSK)によってオーディオトーンに変換される。"0"のビットは1200 Hzの正弦波の4周期、"1"のビットは2400 Hzの8周期で表される。これにより、データレートは300ボーとなる。各フレームは、1つの"0"のスタートビットから始まり、8つのデータビット（最下位ビットが最初）、2つの"1"のストップビットが続くので、各フレームは11ビットとなり、毎秒27+3⁄11バイトのデータレートとなる。 『バイト』1976年2月号にはシンポジウムのレポートが掲載され、3月号にはドン・ランカスターとハロルド・マウフによるハードウェアの例が掲載された。 300ボーというレートは、信頼性が高いが、遅く、典型的な8キロバイトのBASICプログラムをロードするのに5分もかかった。ほとんどのオーディオカセット回路は、より高速な速度に対応していた。 レス・ソロモンによれば、KCSの努力は実を結ばなかったという。「残念ながら、それは長くは続かなかった。その月が終わる前に、誰もが自分のテープ規格に戻ってしまい、録音方法の混乱が悪化してしまった。」 カンサスシティ・シンポジウムの参加者は以下の通りである。 Ray Borrill（英語版）, Bloomington, Indiana Hal Chamberlin, The Computer Hobbyist, Raleigh, North Carolina Richard Smith, The Computer Hobbyist, Raleigh, North Carolina Tom Durston, MITS, Albuquerque, New Mexico Bill Gates, MITS, Albuquerque, New Mexico Ed Roberts, MITS, Albuquerque, New Mexico Bob Zaller, MITS, Albuquerque, New Mexico Lee Felsenstein, LGC Engineering / Processor Technology, Berkeley, California Les Solomon, Popular Electronics Magazine, New York, New York Bob Marsh, Processor Technology, Berkeley, California Joe Frappier, Mikra-D, Bellingham, Massachusetts Gary Kay, Southwest Technical Products Corp, San Antonio, Texas Harold A Mauch, Pronetics/Percom Data, Garland Texas Bob Nelson, PCM, San Ramon, California George Perrine, HAL Communications Corp, Urbana, Illinois Paul Tucker, HAL Communications Corp, Urbana, Illinois Michael Stolowitz, Godbout Electronics, Oakland, California Mike Wise, Sphere, Bountiful, Utah プロセッサ・テクノロジー社は、300ボーまたは1200ボーで動作するCUTS (Computer Users' Tape Standard)方式を開発し、普及した。プロセッサ・テクノロジー社は、S-100バスのCUTSテープI/Oインターフェースボードを提供している。 ターベル・カセット・インターフェイス（英語版）(Tarbell Cassette Interface)は、初期のPC販売店であるスタン・ベイトによれば「S-100コンピュータの事実上の標準となった」カセット・インターフェイスである。ターベルのネイティブ方式(Tarbell standard)のほか、KCS方式にも対応していた。 1976年8月にニュージャージー州アトランティックシティで開催されたPCショーで、プロセッサ・テクノロジー社のボブ・マーシュは、『インターフェイス・エイジ（英語版）』誌の発行者であるボブ・ジョーンズに、レコードにソフトウェアをプレスすることについて話を持ちかけた。プロセッサ・テクノロジー社は、Intel 8080のプログラムを提供して録音してもらったが、このテストレコードはうまく動作せず、同社ではこの取り組みに時間を割くことができなかった。 SWTPC社のダン・メイヤーとゲイリー・キーは、Robert Uiterwykに対し、MC6800用の4K BASICインタプリタプログラムを提供するよう手配した。このプログラムをKCSによりオーディオテープに録音し、そのテープからマスターレコードを作るというアイデアである。Eva-Tone（ソノシート）は薄いビニール製のレコードに1曲分を記録することができた。これは安価で、雑誌に付録としてつけることができた。 マイクロコンピュータシステムズ社のビル・ターナーとビル・ブロングレン、『インターフェイス・エイジ』誌のボブ・ジョーンズ、ホリデイ・イン社のバド・シャムバーガーがEva-Tone社と協力して、レコードへのプログラムの記録に成功した。テープへの録音の中間段階ではドロップアウトが発生するため、SWTPC AC-30カセットインターフェースをレコードカッティング装置に直接接続した。 『インターフェイス・エイジ』1977年5月号に、KCSによる音声を約6分間収録した331⁄3回転のレコードが、「フロッピーROM」の名称で付録としてついた。1978年9月号の「フロッピーROMナンバー5」は、両面に記録されている。Apple BASICによる「自動化されたドレスパターン」とIAPSフォーマットによる「文字を書くためのプログラム」である。 KCSのオリジナルの規格では、データは「マーク」（1）と「スペース」（0）で記録されていた。マークビットは2400 Hzの周波数で8周期で構成され、スペースビットは1200 Hzの周波数で4周期で構成されていた。通常は1バイト（8ビット）長のワードは、リトルエンディアン、つまり最下位ビットが最初に記録された。7ビットのワードの後にはパリティビットが続く。 エイコーン・コンピュータは、BBC MicroとAcorn ElectronにCUTSによる1200ボーのバリエーションを実装した。これは、「0」ビットを1200 Hzの正弦波の1周期に、「1」ビットを2400 Hzの2周期にすることで、データレートを上げたものである。標準的な符号化方式では、8ビットの情報の周りに"0"スタートビットと"1"ストップビットを置き、960ビット/秒の有効データレートが得られる。 また、キャリアトーンのギャップを挟んで256バイトのブロックに記録されており、各ブロックにはシーケンス番号とCRCによるチェックサムが記録されているため、読み取りエラーが発生した場合には、テープを巻き戻して失敗したブロックからリトライすることができる。 MSXはデフォルトで、エイコーンと同じビットエンコーディングによる標準の1200ボーと、オーディオレートを2倍にする2400ボーの両方に対応している。2400ボーのバリエーションでは、「0」ビットは2400 Hzの1周期、「1」ビットは4800 Hzの2周期である。エイコーンとは異なり、MSXは1つの「0」スタートビットに加えて2つの「1」ストップビットを使用するため、1200ボーでの実効レートは約873ビット/秒、2400ボーでの実効レートは約1,745ビット/秒である。マシンのBIOSは、理想的なオーディオソースから最大3600ボーでデータを読み出すことができる。 Bob CottisとMike Blandfordによって提案され、アマチュア・コンピュータ・クラブのニュースレターで発表されたQuick CUTS規格も2400ボーで動作する。これは、「0」を1200 Hzの半周期、「1」を2400 Hzの1周期としてエンコードしていた。受信機は位相同期回路を使用して自己クロックしていた。1978年に発行されたこの特許は、同様のCMI符号（英語版）の1982年の特許よりも前に発行されている。 IBMカセットテープ（英語版） Unified Emulator Format（英語版）(UEF) サッポロシティ・スタンダード [脚注の使い方] ^ 現在の日本では「カンザス」と濁らせるのが一般的だが、当時の文献では「カンサス」と清音での表記が見うけられる。 ^ 当時は提案される全ての方式が2値変調であったためということもあるが、ビット/秒(bps)の代わりに本来は変調レートの単位であるボー(baud)という語が使われることが多かったのはこの頃からである。コンピュータの通信以前からあるテレタイプライタなどの時代から「ボー」は使われていた、といったこともある。 ^ a b Les Solomon, "Solomon's Memory", Digital Deli, 1984 ^ Bunnell, David (December 1975). “BYTE Sponsors ACR Standards Meeting”. Computer Notes (Altair Users Group, MITS Inc.) 1 (6): 1. オリジナルの2012-03-23時点におけるアーカイブ。. https://web.archive.org/web/20120323162247/http://startup.nmnaturalhistory.org/gallery/notesViewer.php?ii=75_12 2007年5月4日閲覧。.  ^ a b Manfred and Virginia Peschke (February 1976). “Report: BYTE's Audio Cassette Standards Symposium”. BYTE (BYTE Publications) 0 (6): 72–73. https://archive.org/stream/byte-magazine-1976-02/1976_02_BYTE_00-06_Color_Graphics#page/n73/mode/1up.  ^ Don Lancaster (March 1976). “Build the Bit Boffer”. BYTE (BYTE Publications) 0 (7): 30–39. https://archive.org/stream/byte-magazine-1976-03/1976_03_BYTE_00-07_Cassette_Interfaces#page/n31/mode/2up.  ^ Harold A. Mauch (March 1976). “Digital Data on Cassette Recorders”. BYTE (BYTE Publications) 0 (7): 40–45. https://archive.org/stream/byte-magazine-1976-03/1976_03_BYTE_00-07_Cassette_Interfaces#page/n41/mode/2up.  ^ “The IMSAI 8800”. pc-history.org. 2018年9月24日閲覧。 ^ Jones, Robert S. (May 1977). “The Floppy ROM Experiment”. Interface Age (McPheters, Wolfe & Jones) 2 (6): .pp 28, 83.  ^ Penchansky, Alan (November 10, 1979). “New Building for 'Soundsheets' Firm”. Billboard (New York: Billboard Publications) 91 (45): 88. ISSN 0006-2510. https://books.google.com/books?id=HiUEAAAAMBAJ&pg=PT85.  ^ Turner, William W. (May 1977). “Robert Uiterwyk's 4K BASIC”. Interface Age (McPheters, Wolfe & Jones) 2 (6): .pp 40–54.  ^ Blomgren, William (May 1977). “Platter BASIC: The Search for a Good, Random Access, Record Cutting Juke Box”. Interface Age (McPheters, Wolfe & Jones) 2 (6): 29–36.  ^ Gary Kay (December 1976). “The Designer's Eye View of the AC-30”. BYTE (BYTE Publications) 1 (16): 98–108.  ^ R. T. Russell, BBC Engineering Designs Department (1981). The BBC Microcomputer System. PART II — HARDWARE SPECIFICATION (Report). The British Broadcasting Corporation. A cassette modem will be incorporated to allow storage of programs and data on a standard audio cassette recorder ... The format will be ... 300 baud and 1200 baud. ... It must be possible to switch between low-speed (CUTS) mode and high-speed mode ^ “4, ROM BIOS”. The MSX Red Book. Kuma Computers. (1985). ISBN 0-7457-0178-7. "The MSX ROM uses a software driven FSK .. method for storing information on the cassette. At the 1200 baud rate this is identical to the Kansas City Standard ... At 1200 baud each 0 bit is written as one complete 1200 Hz LO cycle and each 1 bit as two complete 2400 Hz HI cycles ... When the 2400 baud rate is selected, the two frequencies change to 2400 Hz and 4800 Hz, but the format is otherwise unchanged."  “1.8.3. Kassettenaufzeichnung [1.8.3. Cassette recording]” (German). Arbeitsbuch Mikrocomputer [Microcomputer work book] (2 ed.). Munich, Germany: Franzis-Verlag GmbH. (1987). pp. 230–235. ISBN 3-7723-8022-0  “2.6. Kassetteninterface [2.6. Cassette interface]” (German). Mikroelektronik in der Amateurpraxis [Micro-electronics for the practical amateur] (3 ed.). Berlin: Militärverlag der Deutschen Demokratischen Republik, Leipzig. (1987). pp. 92–99, 164–165. ISBN 3-327-00357-2. 7469332  “CASsette IO Utilities” (2015年3月15日). 2017年3月14日時点のオリジナルよりアーカイブ。2017年3月14日閲覧。 BYTE No.6（1976/Feb） pp. 72～73 BYTE's Audio Cassette Standards Symposium 『トランジスタ技術』1977年7月号「プログラム交換・標準化へのみちしるべ　カンサス・シティ(KC)スタンダードについて」（同誌編集部） 安田寿明『マイ・コンピュータ入門』p. 179、『マイ・コンピュータをつかう』p. 281 The original Byte Magazine article 2-second sound sample of stored KCS file SWTPC.com's article on the AC-30 cassette interface Percom Data CIS-30 Cassette Interface Brochure Kansas City Tape Decoder