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.5k
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+Raspberry Piで 本物のPSGを鳴らすデモを ブラッシュアップしました / osc2026Tokyo-spring
tsutsui
1
15
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを OSC駆動の7日間で作った話 / OSC2026Osaka
tsutsui
1
140
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
250
今年もNetBSD環境を使って PC-6001のPSG演奏デモを作った話 / KOF2025
tsutsui
0
260
NetBSD/luna68kの歴史解説と、LUNAでアニメGIF再生デモと ついでにPC-6001デモも作った話 / OSC2025Kyoto
tsutsui
0
130
NetBSDの解説と NetBSD/luna68kの歴史と ついでにPC-6001展示 / OSC2025Tokyo-spring
tsutsui
0
210
GitHub Actionsを使ってNetBSDマイナー機種用のビルドテストCIを書いてみた話 / OSC2025Osaka
tsutsui
0
170
PC-6001のPSG演奏デモを機会にNetBSDを真面目に説明してみる / OSC2024Ehime
tsutsui
0
510
PC-6001のPSG演奏デモをなるべくNetBSD環境を使って作った話 / KOF2024
tsutsui
1
720
Other Decks in Programming
See All in Programming
TROCCOで実現するkintone+BigQueryによるオペレーション改善
ssxota
0
120
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
150
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
610
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.3k
Raku Raku Notion 20260128
hareyakayuruyaka
0
430
Rails Girls Tokyo 18th GMO Pepabo Sponsor Talk
yutokyokutyo
0
190
Head of Engineeringが現場で回した生産性向上施策 2025→2026
gessy0129
0
210
TipKitTips
ktcryomm
0
150
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
1
400
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
350
atmaCup #23でAIコーディングを活用した話
ml_bear
4
730
AWS Infrastructure as Code の新機能 2025 総まとめ 〜SA 4人による怒涛のデモ祭り〜
konokenj
10
3.1k
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
140
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
The Curious Case for Waylosing
cassininazir
0
260
Color Theory Basics | Prateek | Gurzu
gurzu
0
220
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
The Invisible Side of Design
smashingmag
302
51k
Making Projects Easy
brettharned
120
6.6k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
230
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 にすれば何でも 展示・セミナーネタになる!? まとめ