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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Izumi Tsutsui
January 28, 2017
Programming
1.5k
0
Share
OSC2017 Osaka PC-6001 Emulator on NetBSD and pkgsrc
OSC2017大阪のNetBSDセミナーで発表した『NetBSD + pkgsrc で PC-6001 エミュレータ』のスライドです。
Izumi Tsutsui
January 28, 2017
More Decks by Izumi Tsutsui
See All by Izumi Tsutsui
OSC東京でいただいた UIAPduinoマイコンボードで PSG演奏と液晶ドッド絵デモ / osc2026Kagawa
tsutsui
0
77
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを ブラッシュアップしました / osc2026Tokyo-spring
tsutsui
1
59
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを OSC駆動の7日間で作った話 / OSC2026Osaka
tsutsui
1
160
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
300
今年もNetBSD環境を使って PC-6001のPSG演奏デモを作った話 / KOF2025
tsutsui
0
300
NetBSD/luna68kの歴史解説と、LUNAでアニメGIF再生デモと ついでにPC-6001デモも作った話 / OSC2025Kyoto
tsutsui
0
150
NetBSDの解説と NetBSD/luna68kの歴史と ついでにPC-6001展示 / OSC2025Tokyo-spring
tsutsui
0
230
GitHub Actionsを使ってNetBSDマイナー機種用のビルドテストCIを書いてみた話 / OSC2025Osaka
tsutsui
0
180
PC-6001のPSG演奏デモを機会にNetBSDを真面目に説明してみる / OSC2024Ehime
tsutsui
0
550
Other Decks in Programming
See All in Programming
Firefoxにコントリビューションして得られた学び
ken7253
2
150
Don't Prompt Harder, Structure Better
kitasuke
0
800
tRPCの概要と少しだけパフォーマンス
misoton665
2
250
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
160
SREに優しいTerraform構成 modulesとstateの組み方
hiyanger
2
160
PHPer、Cloudflare に引っ越す
suguruooki
1
130
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
720
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
360
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
330
AI-DLC Deep Dive
yuukiyo
9
5.3k
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
310
Structured Concurrency, Scoped Values and Joiners in the JDK 25 26 27
josepaumard
1
130
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
340
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
130
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
What's in a price? How to price your products and services
michaelherold
247
13k
The SEO identity crisis: Don't let AI make you average
varn
0
460
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Building an army of robots
kneath
306
46k
Making Projects Easy
brettharned
120
6.6k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
120
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
How STYLIGHT went responsive
nonsquared
100
6.1k
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 にすれば何でも 展示・セミナーネタになる!? まとめ