Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OSC2017 Osaka PC-6001 Emulator on NetBSD and pk...
Search
Izumi Tsutsui
January 28, 2017
Programming
0
1.4k
OSC2017 Osaka PC-6001 Emulator on NetBSD and pkgsrc
OSC2017大阪のNetBSDセミナーで発表した『NetBSD + pkgsrc で PC-6001 エミュレータ』のスライドです。
Izumi Tsutsui
January 28, 2017
Tweet
Share
More Decks by Izumi Tsutsui
See All by Izumi Tsutsui
NetBSD/luna68kの歴史解説と、LUNAでアニメGIF再生デモと ついでにPC-6001デモも作った話 / OSC2025Kyoto
tsutsui
0
62
NetBSDの解説と NetBSD/luna68kの歴史と ついでにPC-6001展示 / OSC2025Tokyo-spring
tsutsui
0
150
GitHub Actionsを使ってNetBSDマイナー機種用のビルドテストCIを書いてみた話 / OSC2025Osaka
tsutsui
0
120
PC-6001のPSG演奏デモを機会にNetBSDを真面目に説明してみる / OSC2024Ehime
tsutsui
0
390
PC-6001のPSG演奏デモをなるべくNetBSD環境を使って作った話 / KOF2024
tsutsui
1
510
OSC展示とLUNAとNetBSD / OSC2024Kyoto
tsutsui
1
640
digital VAX, NetBSD/vaxの歴史と VAXstation 3100/m30 展示 / OSC2024Osaka
tsutsui
0
1.3k
SONY NEWS NetBSD移植作業とNWS-3260展示 / KOF2023
tsutsui
0
1.6k
37年前の Sun 3/60 のために最新のNetBSDと最新のX.orgをメンテする話 / KOF2022
tsutsui
1
610
Other Decks in Programming
See All in Programming
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
920
Advance Your Career with Open Source
ivargrimstad
0
350
Le côté obscur des IA génératives
pascallemerrer
0
120
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
Model Pollution
hschwentner
1
180
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
100
CSC509 Lecture 02
javiergs
PRO
0
410
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
130
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
340
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.3k
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Practical Orchestrator
shlominoach
190
11k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Context Engineering - Making Every Token Count
addyosmani
5
190
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Agile that works and the tools we love
rasmusluckow
331
21k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
How to train your dragon (web standard)
notwaldorf
96
6.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Transcript
NetBSD + pkgsrc で PC-6001 エミュレータ オープンソース カンファレンス 2017 大阪
むりやり PC-6001 ネタ ふたたび Izumi Tsutsui
[email protected]
Twitter: @tsutsuii
OSC大阪の 一週間前の ある日
https://twitter.com/tsutsuii/status/822684506545000449
https://twitter.com/ebijun/status/822685193811042304
https://twitter.com/tsutsuii/status/822728091810152448
https://twitter.com/ebijun/status/822779295873404928
というわけで NetBSDとは あまり関係なく PC-6001の話 です
シールも配布中です
PC-6001 とは • NEC製の 8ビットパソコン •1981年 11月 発売
PC-6001 スペック •CPU: 8bit Z80互換 4MHz •RAM: 標準 16KB, 最大32KB
•グラフィック: 128×192ドット 4色 256×192ドット モノクロ2色 •音源:PSG 3和音 •標準価格:89,800円
ホビー・教育向け ターゲット http://www.nicovideo.jp/watch/sm1254646
私も 小学生の頃に 友達の家やお店で いじってました……
•VRAMも共用 → 空きは 7KB •それでもいろいろ作れた時代 いろいろ遊ぶには32KBに増設しないとキツいかも メモリ 16KB
•128×192: 横長ドット •青・赤・緑・黄 (白と黒はナシ) 4色の芸術
ビデオ出力の特性を使った 「にじみモード」という技も モノクロモードもあります
•カセットテープ(死語) に“音”で記録 •1200bps (100バイト/秒) •23KB のロードに 5分弱 外部記憶はテープレコーダー
PSG音源 • いわゆるピコピコ音 × 3和音 • 元はアーケードゲーム用? • BASICだと PLAY
文で MMLという書式を書いて演奏 こんなの→ "C8<D+D+8G8F8G8D+>D+DD+F"
PSG展示@OSC ※詳しくはOSC京都・ OSC広島の資料を 参照してください
35年前のマシンですが 21世紀の今でも PC-6001用ソフトや エミュレータを 作っている人がいます
イース2 オープニング https://youtu.be/dpRihhIxznc
ちゃんとアニメしてる! PSGで音楽も鳴ってる! テープからロードしながら 画面スクロールしてる!!! ※エミュレータでの動作実演もご覧ください この動画がすべてのきっかけです
作者のTINY野郎さんのブログより http://www.tiny-yarou.com/prj006.html
PC-6001用エミュレータ https://ja.wikipedia.org/wiki/PC-6000%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA •WikiPediaより 1999年頃より、Microsoft Windows やUNIX上で動くPC-6001の エミュレータが開発され、 当時のゲームソフトウエアなどが 実行できるようになっている。
PC6001V http://papicom.net/p6v/index.html
•Windows用 •ソースコードも公開! •高速テープロードモード •どこでもSAVE機能 •リプレイ機能 •デバッガモード (モニタ・逆アセンブル・ブレーク等) PC6001V
デバッグモニタが便利!
PC6001VW http://p6ers.net/bernie/develop/pc6001vw3.html
•PC6001V をベースに拡張 •デバッグモードがさらに充実 ➢ファイル→RAMへのロード ➢RAM→ファイルへセーブ ➢VRAMのビットマップ表示機能 等々 PC6001VW
よっしゅさんの PSG音源ドライバ http://park10.wakwak.com/~yosh/p6.html
耳コピ→MML打ちこみ • ボカロとかより簡単(?)です
そんな感じでいろいろ作りました http://www.nicovideo.jp/watch/sm29263535 http://www.nicovideo.jp/watch/sm29939586
エミュレータ上での デモの動作も 見てみてください ※デモ実演
普通に NetBSD で P6エミュレータを 動かしてますが、 当時はWindowsで 作業してました 編集とかgit管理はNetBSD上
PC6001VX http://eighttails.seesaa.net/article/305067428.html https://github.com/eighttails/PC6001VX
•READMEより 「PC6001VをLinux等で動作 するよう改変したものです」 「PC6001VXの末尾のXは クロスプラットフォームの Xです」 PC6001VX https://github.com/eighttails/PC6001VX
•基本的な機能は PC6001V 準拠 •クロスGUI環境としてQt5を使用 •TILT機能などの拡張もあり •Androidでも動作 PC6001VX https://github.com/eighttails/PC6001VX
なかなかスパルタ式 (´・ω・`) PC6001VX ビルド手順 https://github.com/eighttails/PC6001VX
しばらく保留 (´・ω・`) https://twitter.com/tsutsuii/status/745587703056474112
年末になって 「冬休みの宿題」 ということで ようやく着手
試行錯誤5時間の結果 https://twitter.com/tsutsuii/status/814555848257073152
pkgsrc化 ポイント •"*.pro” のある場所で qmake → Makefile ができる •x11/qt5-qtbase とかを入れる
•multimedia/ffmpeg3 も入れる •非Linuxの記述が無いので適当に pkg-config とか追加 •グラボによっては HwAccel が 落ちるので手動で無効に設定 詳しくはブログ記事を参照 http://ch.nicovideo.jp/tsutsui/blomaga/ar1165341
さっそく補足されました https://twitter.com/eighttails/status/814730564494192642
さっそくレポート https://twitter.com/tsutsuii/status/814732932615016449
とりこまれました https://twitter.com/eighttails/status/814857031404224512
https://twitter.com/eighttails/status/814873526192640000 https://twitter.com/eighttails/status/814871184739209216 “Of course, it runs ...”
NetBSDは いろんなマシンで動く + pkgsrcは NetBSDで使える ↓ pkgsrc入りしたアプリは いろんなマシンで動く?
過去の事例
ONScripter
Xnp2
xkanon
mikutter
“なぜそれを動かすのか” https://twitter.com/tsutsuii/status/182102228704825345
謎マシンの代表として NetBSD/dreamcast (CF付き)で PC6001VX を展示デモしようと 1月8日から I/O DATA LANTANKで ビルドを仕掛けていたのですが、
これを書いてる 28日朝6時時点でも まだQt5のビルド中で挫折(´・ω・`) ご報告とおわび
•昔のマシンはこじんまりしていて 結構お手軽に楽しめます •エミュレーターと開発環境も 充実しています •pkgsrc にすると何でも動くよ! •pkgsrc にすれば何でも 展示・セミナーネタになる!? まとめ