今回のサミー事件は仕込みか? 欠陥か?

このエントリーをはてなブックマークに追加
201チェキナ名無しさん
202チェキナ名無しさん:01/10/04 00:41 ID:61XNbqhU
喜太郎のレバーはマイクロスイッチ、ディスク以降は光センサー(?)ってところに原因があるような気がする。
レバーを変更したときにミスに気づかなかったとかじゃないかな?
だったら、仕込みの可能性は低いような気もする。
203チェキナ名無しさん:01/10/04 00:45 ID:7QzLrh4Y
元サミー社員番号2桁の奴らちょっとココまでこい。ヴォケ
204チェキナ名無しさん:01/10/04 00:52 ID:BxVW7iZQ
2桁ですが何か?

私の記憶が確かなら開発に2桁はいないと思われ・・・
205チェキナ名無しさん:01/10/04 01:54 ID:w2CQNZZ2
age
206チェキナ名無しさん:01/10/04 01:57 ID:7AEU.fa2
すぐ中間で引っかかるから欠陥レバーだ!と思ってたのに。大欠陥だ。

山佐の新筐体もレバーが引っかかる台多いんだよな。
あれも光センサーなのか?
207アナライザー見習:01/10/04 03:04 ID:qCSEZ/tQ
>>206
家にあるキュロゴス見てみた。
レバーは光センサーだけど、シュミットバッファ通したフォトIC出力の
センサー(TLP1019)だから、センサー部分の基盤だけ見ればアナログ入力
じゃないと思う。まぁ、回路追っかけたりROM解析したわけじゃないから、
その先はよくわかんないけど...
208チェキナ名無しさん:01/10/04 05:57 ID:M2x6Vd1E
>>207
色んなものがある家だね
209チェキナ名無しさん:01/10/04 09:01 ID:KFIs9f8Q
age
210チェキナ名無しさん:01/10/04 10:18 ID:zU2ODzR6
211チェキナ名無しさん:01/10/04 10:25 ID:FxvsGJLs
今後出る雑誌でどう説明するか楽しみだ。
印での時もそうだったが、欠陥という一言で済ませているが、
なぜ客側であることを謳っている雑誌社が仕込みに付いて検証しないのだろうか?
212チェキナ名無しさん:01/10/04 10:34 ID:i9x5EHCU
>>211
そんなことしてメーカーに嫌われたり敵対したくないから。
情報が広まる前に自分達は抜きまくり。
客側のことなんて考えているわけ無い。
213チェキナ名無しさん:01/10/04 10:34 ID:D6HkaXIo
>>211
パチマガの下田(だっけ)みたいにK察や保通教に噛み付くコラムってすくないですから。
所詮狭い世界、認可する側される側の関係も曖昧、雑誌とメーカーも馴れ合い。
現状で寒いー出入り禁止は致命傷になりかねないから。

でもそうすると、あるぜの保有雑誌とBigちゃんねるはOKか?
ぜひ特集してほしいですね。
214チェキナ名無しさん:01/10/04 10:42 ID:i9x5EHCU
それより今回つける中間部品に新たな仕込みが有る様な気がするのは自分だけか?
215チェキナ名無しさん:01/10/04 10:48 ID:zU2ODzR6
>それより今回つける中間部品に新たな仕込みが有る様な気がするのは自分だけか?
単純に1/0を確定するがけでしょう。
f/fなりラッチなりなんでも出来るでしょう。
2系統のバッファ前に1/0を確定させればよいだけ。
216チェキナ名無しさん:01/10/04 11:19 ID:h2IS/fgs
パチスロの解析はしたことないんだけど
ザイログ表記の逆アセンブルリストなんてみたの Z80 以来だ
ちょっと懐かしかった・・・

で、結局プログラム自体は問題ないってことだね
ということは雑誌の解析人たちは気が付いてなかったわけだ

問題があったのはシステム設計のほうで
・入力信号の経路が2ヶ所あったということ
・片方がバッファ付きでシンクロ(同期)がとれなかったこと

っていう点だね。システム設計者、ご愁傷様。
217チェキナ名無しさん:01/10/04 11:27 ID:MYOkrF0M
>>211
オール設定1バトの、負債回収に忙しい(w
218チェキナ名無しさん:01/10/04 11:41 ID:j8h24CwA
あと、なぜ入力を2系統にしたのか考えてみたけど

1.周期をとられて体感器攻略をされるのを嫌った
2.部品の特許の問題
3.保通協の認可をクリアするため

あたりじゃないかな・・・
219チェキナ名無しさん:01/10/04 16:58 ID:hjqsdQ6k
仕込みだったのかな・・・それにしては長い期間、
気付かれなかったわけだし。どうも欠陥回路くさいね。

プログラムの解析しても、マウスを分解したりはしない
のといっしょで、外部入力装置のチェックは回路設計の
責任になる。ハード側の問題。

やっぱり、ある日誰かが偶然気が付いた説が濃厚だと思う。
220チェキナ名無しさん:01/10/04 17:01 ID:UBeu69D.
仕込みに決まってンだろ!
これを欠陥で済ませられンなら
なんだって通るだろが!!
221追記、デジカメのシステムやより:01/10/04 17:02 ID:2tiStJ0w
>それより今回つける中間部品に新たな仕込みが有る様な気がするのは自分だけか?
単純に1/0を確定するがけでしょう。
>>f/fなりラッチなりなんでも出来るでしょう。2系統のバッファ前に1/0を確定させればよいだけ。
単純に1/0を確定するがけでしょう。f/fなりラッチなりなんでも出来るでしょう。
2系統のバッファ前に1/0を確定させればよいだけ
スタートレバー情報の取り込みタイミング(ポーリング、割り込み等)がポーリングであればその周期以上のONパルスを出せばよい。
ワンショット当たりが良いのではないか、周期2msとすればレバー変化店検出から5msぐらいのワンショットパルスを確定させればOKですよ。
222チェキナ名無しさん:01/10/04 17:03 ID:5gQaRxEU
>>220
ネタとして考えたんだけど、今回のこの機能を他の台に付けてもそれほどうまみがなんですよね。
ストック機はHbと同じだから例外だけど、りぷを連続させたりはずれ目を連続させたり。
小役のコピーは有効だけど色当ての応用なんか絶妙だし。

レバーの現象と最近の台の傾向合わせると偶然じゃないよな。
223チェキナ名無しさん:01/10/04 17:06 ID:VWv31zsU
>>222
子役のコピーだけで十分だろうが。ハンパねえ回るだろ
224文が変だ:01/10/04 17:10 ID:5gQaRxEU
>>223
当然小役だけでおなかいっぱいですよ。
ただ、出かたが普通じゃないのでばれるよね。

そうすると、ストックが倍になっているのやJackPotATが1/50ぐらいなんか、
見た目は機能とおりで出ているから怪しまれないですよね。

攻略としてはあまり目立ってはいけないから、鯖ちゃんが入ってたり
JackPotATだったら別にばかヅキしているとしかみられないから。
225チェキナ名無しさん:01/10/04 19:01 ID:reJaio.U
>>193>>216
私は逆アセンブルはリスト見ても読めないのですが、
アゴを使った状態で1でも0でもない値が入ってきた場合に、
不正な動作をさせるように組んであるということは本当にないのでしょうか?
意図的ではないように見せかけて。

できれば、どなたかに噛み砕いて流れを書いていただけるか、
わかりやすい他言語に置き換えていただけると非常にわかりやすいのですが。
VBやCとかならわかるという人がたくさん検証に加われるので、
より真相に迫れると思うのです。

今のままですと、古文書を見せてもらいながら学者の説明を聞いているような感じで、
ソフトに本当に問題がないのかどうか、どうも深く納得できない部分があるのです。
わがままなお願いかもしれませんが、よろしくお願いします。
226チェキナ名無しさん:01/10/04 20:17 ID:1w6Ba9wU
>>225
ほかで読んだことを自分なりにまとめてみました。
ソフトというかプログラムを作る部分ではほとんど問題ないですよね。
(でもメモリクリアしてないのは問題か。お掃除はきちんとネ、でも忘れるんだなよく)

設計段階でレバー入力を2系統で取ってきてタイミングに頼って処理していた部分がまずいと思う。

VBうんぬん書いてあったのでいうと、
たとえばKeyDownとKeyPressイベントが順不同で起こる状態でイベント関数の両方でグローバル変数をいじってる感じ。
(たとえが悪い、実際はイベント順が決まっているのでたとえになってない、ごめん)

普通に押すとA->Bで起こる事象が、ゆっくりやるとB->Aになる。

A.乱数取得→書き込み→リール回し
B.Aの値読みこみで役決定

Bの後でクリアしてないので、A→B→Bがあるとコピー成立。

突込みどころ満載だろうけど、こんな説明でどうでしょう。
227225:01/10/05 00:29 ID:5mOy0O72
>>226
ありがとうございます。

だけど、前からこのスレにいるので構造の概要は分かっているのです。

お手数ですが、>>226様でもほかの方でも構いませんので、
>>193のプログラムを逆アセンブル読めない人にも分かるように
解説して下さい。
細かい流れが全く分からないので、せっかくソフトが出てきたのに
歯がゆい思いをしています。お願いします。
228チェキナ名無しさん:01/10/05 00:33 ID:Qb9Ub8Pk
>>226

>>78,>>83辺りの説明をみれ

バグである事は違いないが
229チェキナ名無しさん:01/10/05 00:37 ID:UbDoIMSU
>>227
PG板にでも貼り付けてみれば?
230チェキナ名無しさん:01/10/05 01:03 ID:6Bh9Ipg.
>>227
ここでもみて、自分で調べて、Cに書き換えて俺に教えてくれ。
俺は挫折した(笑)

Z80全命令セット解説
http://www.systemax.jp/data/Z80_inst.html
231チェキナ名無しさん:01/10/05 01:17 ID:9FrUaQ6g
今回の事件の焦点は、まさにこれ。
一応客観的に分析したつもりで、おれの今の結論は、
はじめにハード的な欠陥があった。それを発見した奴らが悪用した。
この場合の悪用は、縦横開発も含む。
232チェキナ名無しさん:01/10/05 01:27 ID:HgWuyrv2
昔のツテでちょっぴし調べてみた。
>>78 の[メモリ]って表記はちと誤解をまねくね。
74HC590っていうハードウェアカウンタとD-FFが
一つになった標準ICを使ってるね。レバー入力で
ラッチされる訳だ。ソフトウェアでは読み出ししか
出来ない。よってプログラムいくら解析してもムダ。

あと>>202の書き込みが関係者っぽかったので
喜太郎もちょっと見たんだけどさ。面白いねこれ。
同じ回路だったよ。おそらく動作上問題なかった回路を
使いまわしたらレバーでボケ(数億円分の)かましてたって
トコじゃないかと見た。
233チェキナ名無しさん:01/10/05 01:50 ID:peLwx2vA
>>232
つーことは、強く叩いた時と弱く叩いた時では次の出目が変わるわけだね。
この方式を使う限り、スロの体感器攻略ができちゃうかもね。
234謎の風来坊X:01/10/05 02:16 ID:t2z/6vrA
伏字でいいなら大体の流れは書けますが興味ある人いますか?
235チェキナ名無しさん:01/10/05 02:18 ID:7F4GKXPM
>>234
お願いします。
236謎の風来坊X ◆aYMds2XE :01/10/05 02:19 ID:t2z/6vrA
では偽者に荒される事も予想されるのでキャップ付きで書きます
237謎の風来坊X ◆aYMds2XE :01/10/05 02:24 ID:t2z/6vrA
Q.会社ぐるみ?
A.いえ、それは間違いです 仕込んだ人間とその仲間○○人

Q.○○○の人間は今回の攻略を実戦してるの?
A.いえ、その話自体は9/29で始めて匿名メールで確認しました
238謎の風来坊X ◆aYMds2XE :01/10/05 02:27 ID:t2z/6vrA
○○県の指定暴力団○○組系○宮会幹部○西○矢
今回の仕込みネタで○○○の利益を得ている人物
239謎の風来坊X ◇aYMds2XE:01/10/05 02:35 ID:E2Tki8bA
Q.あなたもやりましたか?
A.目押しができないので、ほとんど儲かりませんでした。
240チェキナ名無しさん:01/10/05 02:46 ID:/zO6mOOc
>謎の風来坊X さん
できればもう少しききたい、つーかさげなくていいの?
241チェキナ名無しさん:01/10/05 02:46 ID:ZWVSoRnI
このスレ本当に勉強になります…  オモロイ!!
感謝感謝。
242チェキナ名無しさん:01/10/05 03:07 ID:W2FcDrDo
他のスレでも書いたけど、誰かアルゼレバーに変えられた後でもコピれる
やり方知らない?
Hbをアルゼレバーに変えて稼働中の店あるんだけど、アルゼレバーでも
できるやり方があるとか。
ハードの仕組みに詳しい人なら判るかなと。
243  あgれ:01/10/05 03:23 ID:iJ8mmFFs
Q.バリバリ攻略できましたーーーが?
A.事務所いたーYO。
244チェキナ名無しさん:01/10/05 03:26 ID:m1Bq9GTI
開発技術者が頻繁に入れ替わるから、こんなことになるんでしょうか?
245242:01/10/05 03:31 ID:W2FcDrDo
ダメか?
246いまさらかも・・:01/10/05 03:40 ID:fodpIN/Y
いつだったか、この板、パチ版で「あごはずし」とかいうスレッドがかなり前(確か2〜3ヶ月前)
からぽつぽつと立ってたんだけどこれの事だったのか?
247チェキナ名無しさん:01/10/05 03:44 ID:GcDM7QD2
>>232
うーん、あなたはわかっている人だ。
攻略使用時、乱数値はコピーされるんじゃなく、上書きされない。
だから同じ値になる。

要はラッチ信号を変化させないで、CPUの入力ポートに入る
信号だけを変化させられるから攻略になるんだよね。それが可能な
ハード(レバー込み)だったと。
普通にひとつのシュミットトリガで受けてそれを両方に入れるように
作ればそんなこと起きないのにね。
それがミスなのか作為的な設計なのかの推測はあえて避けるけど。
248チェキナ名無しさん:01/10/05 03:52 ID:mxERI0R6
パチスロなんてのは所詮は人の射幸心を煽り金を巻き上げるといった
ヤクザなマシーンなのだから、そんなものに公正を望むのもどうだろう?
攻略法使って殺されそうになったって話もよく聞くしね。
249チェキナ名無しさん:01/10/05 04:02 ID:OnMF0epw
>>244
確かにそれも理由かもしれんが、各メーカーの競争が激しく
新台の開発スケジュールにも余裕が無いのでは?と思われ
つーか、使いまわし可能なら楽できるし(藁
250チェキナ名無しさん:01/10/05 04:07 ID:h/O6p3pg
GUIのユーザーが多いからこういうたとえはどうだ

GUIのボタンはカーソルボタン上でマウスボタン押し下げ>戻しで
押したことになるのですが、押し上げ前にカーソルをボタンから
離すと押したことになりません。
間違ってOKを押したのをキャンセルできるわけなのですが。

本来は戻し時にリール回転と乱数取得のコードが起動するように
作るはずが
押し下げ時にリール回転、戻し時に乱数取得のコードを起動する
ように作ってしまった。
251チェキナ名無しさん:01/10/05 04:21 ID:Tr5O.NZc
今日某スロット店いったんだけど、宝船もなんか攻略法あるっぽいぞ
やり方よく見てなかったけど、なんかやろうとしてるときは毎回リプ2連してたYO
俺がみてた限りじゃリプ2連のたんびにほぼ100%でARTはいってたぞ!!
252チェキナ名無しさん:01/10/05 04:25 ID:0p9hA8ME
みなさん頭が良いので感心してこのレス読んでますが
素人(ハード、ソフト知識ゼロ)からみて、たとえばですよ
今回のサミーのレバーを全く他のメーカーに取り付けた場合どぉなるか。
回路的(?)に取り付けられなければ別ですが、ついた場合
同じようにコピーと言うか前回の乱数取得のままドラムをまわす事が出来るのでしょうか?
そのあたりで『仕込みか偶然か』が判るのでは、、、。
253チェキナ名無しさん:01/10/05 04:28 ID:yBYAijk2
宝船まじっすか
254チェキナ名無しさん:01/10/05 04:29 ID:uhhRNKNY
アルゼのレバー、サミー台に流用できるんでしょ?
つまり、アルゼの台も2系統で信号取ってるってことでしょ?
255チェキナ名無しさん:01/10/05 04:37 ID:mxERI0R6
レバーは単純にON・OFFなんじゃないのかい?
んで、そのレバーを監視してる系が2つあるって事なんじゃないのかい?
ところで2系統っていうのは、何の系と何の系よ?
乱数生成とそれ以外って事でいいのかい?
256チェキナ名無しさん:01/10/05 04:41 ID:9FrUaQ6g
>255
ところがちがうのだ。
詳しくは、このスレを始めから読めばわかる。
257チェキナ名無しさん:01/10/05 04:42 ID:mxERI0R6
>256さん
そうですか、じゃあ後で読んでみますね。
258チェキナ名無しさん:01/10/05 04:43 ID:fo21p8V6
あごのスレがあった頃、ネタだと思っていた一人です。
今となってはかなりの後悔。と思いきや、ホントに顎って
サミー系の攻略の事をいっていたのでしょうか。
スレ立ててまで利くようなもんじゃないと思ってたので
ここにかってに書いてしまいました。
だってそんな目立つ事やんなくてもかなりゆっくり叩けば
できるじゃん。
259チェキナ名無しさん:01/10/05 04:52 ID:fo21p8V6
どーなんよ??
だれか実践してた奴いないの??
260チェキナ名無しさん:01/10/05 04:58 ID:MIRfUz0I
自分も254さんと同じ事考えてた。
ふと思い出したのだが、9月27日の話なんだけど
ビーマやってたらレバーがスポッと抜けてきた。
今考えるとその時点でレバー取り替えてたのかも。
261260@電波受信中:01/10/05 05:07 ID:MIRfUz0I
で、なんとなくだけど、、、、、
レバー + ボンカレー に秘密が有る気がする。
262チェキナ名無しさん:01/10/05 05:12 ID:fo21p8V6
ボンカレーも花火じゃなくてサミー系でやってたら
おもしろかったのにね。
263チェキナ名無しさん:01/10/05 06:07 ID:6Bh9Ipg.
今回の仕組みについて、厨房の俺が厨房用語で理解したことを書いてみる。


>>30より(>>187も参考)
>ある信号が2系統に分かれて、片側だけフィルターしてる。
A>フィルターしてる信号は乱数のラッチ信号として、
B>フィルターしてない信号はスタート入力の認識用として使われてます。

レバーを倒すことにより乱数が造られて、それを元に役決定するのが本来
である。レバーが倒れたことを検知するのは、光スイッチであった。

光スイッチはアナログであるが、それを乱数発生装置に知らせる線には
シュミット回路を挟む。シュミット回路とは、アナログ的にぐにゃっと
上下するオンオフ信号を、びしっとしたデジタルに変える回路である。
一方、プログラムに「レバーが引かれたよ」を伝える信号線はそのまま
回路を通さず繋げた。その信号線がオンになったかどうかを判断するのは、
メイン側の気分である。

そこで、レバーをゆっくり動かすことをしてみる。
シュミット回路経由の信号線は、ある大きさになるまでは断固として0を
キープする。一方、アナログ直結の信号線の電圧は徐々に大きくなる。
かくして「スタートと認識されたが、乱数発生装置はまだ反応していない」
状態が作れる可能性がある。

ところで、乱数の作り方だが、外付けのICが内部では次々に一生懸命造っ
ているのだが、それを取り出すには、そのICにある信号を与た瞬間の値を
出力線に保持し続け(ラッチしている)、次の信号を貰って、改めて別の乱数
を出力線に出すという仕組みである。

なのでスタートと認識したプログラム側は、全く正規の動きとして処理を始
めて、当然、乱数も読みにいくのだが、A信号を受け取っていない乱数発生器
は前回のままの乱数を示しているのだった。でも、プログラムにはたまたま同
じ乱数だったんだろうとしか思えないので、問題なく以降の処理を継続するの
であった。

コピーという名前で呼ばれているが、正確には「書き換えずに回す」だね。

仮に、BだけオンにしてAをオンにしない位置を正確に再現できれば、
永久コピーも可能なのかもしれない。でも、人間業ではないのだろう。
人間業ではないが、機械の個体差によっては可能かもしれない。


こんな風に愚考してみたが、これでよろしいのか?
264216:01/10/05 06:27 ID:KXU1fK7s
>>225
アセンブラをCに変更しても、あまり意味はないように思うのだが
(かえってわかりにくくなる)とりあえずやってみたさ・・・

やってみて気が付いたんだけど、ちょっと変な処理があるな(汗
>>193 のリストの、コール元がどんな処理しているか知りたくなった。
265216:01/10/05 06:32 ID:KXU1fK7s
Z80 アセンブラを知らない人のために一応
char h,l は int hl として
char b,c は int bc として
char d,e は int de として使える
portin() はポート読み出しの関数としてみてほしい。
peek,poke はメモリ読み書き。セグメント指定なしでオフセットのみ指定。

06B6: ;sub 06B6() {
ld hl,7E19h ; h = 0x7e, l = 0x19;
ld de,(7E05h) ; d = peekb(0x7e05), e = peekb(0x7e06);
ld a,d ; a = d;
; /* 場合分け(以下 x は 0 or 1)
; d reg. e reg. a reg.
; xxx0xxxx xxx0xxxx 00000000
; xxx0xxxx xxx1xxxx 00010000 ←特殊処理?
; xxx1xxxx xxx0xxxx 00000000
; xxx1xxxx xxx1xxxx 00000000
; */
cpl ; a = ~a; // bit反転
or 11101111b ; a = a | 1110111B; // bit4マスク
and e ; a = a & e;
jr nz,label_01 ; if(a <> 0) goto label_01;
set 7,(hl) ; pokeb(hl, peekb(hl) | 10000000b);
bit 4,d ; if(d & 00010000b){
ret z ; return;
; }
rst 20h ; call 0x0020; // ウェイト処理かな?
ld bc,402h ; b=4, c=2 // b はカウンタ c はポートアドレス
ld hl,7e76h ; hl = 0x7e76 // 乱数格納領域(RAM)の先頭
di ; // 割り込み禁止
;label_00: // 4バイトコピー
inc c ; c++; // ポート 03,04,05,06 から
ini ; pokeb(hl, portin(c)); b--; // RAM 7e76,7e77,7e78,7e79 にコピー
jr nz,label_00 ; if(b == 0) goto label_00;
ei ; // 割り込み許可
scf ; // キャリーフラグセット
;label_01:
ld l,19h ; l = 0x19h; // 4バイトコピーで HL レジスタが壊れされるので
; // 下位バイト再セット(メモリ節約かな)
res 7,(hl) ; pokeb(hl, peekb(hl) and 01111111b);
ret ; return;
;}
266チェキナ名無しさん:01/10/05 06:32 ID:o4Wip6/E
スロ雑誌各誌は今回の件は無視だろうか?
注目している。
267216 スマソ、ズレまくり(藁:01/10/05 06:36 ID:KXU1fK7s
Z80 アセンブラを知らない人のために一応
char h,l は int hl として
char b,c は int bc として
char d,e は int de として使える
portin() はポート読み出しの関数としてみてほしい。
peek,poke はメモリ読み書き。セグメント指定なしでオフセットのみ指定。

06B6:         ;sub 06B6() {
ld hl,7E19h     ;  h = 0x7e, l = 0x19;
ld de,(7E05h)    ;  d = peekb(0x7e05), e = peekb(0x7e06);
ld a,d         ;  a = d;
            ;  /* 場合分け(以下 x は 0 or 1)
            ;    d reg.   e reg.   a reg.
            ;    xxx0xxxx xxx0xxxx 00000000
            ;    xxx0xxxx xxx1xxxx 00010000 ←特殊処理?
            ;    xxx1xxxx xxx0xxxx 00000000
            ;    xxx1xxxx xxx1xxxx 00000000
            ;  */
cpl          ;  a = ~a;              // bit反転
or 11101111b   ;  a = a | 1110111B;       // bit4マスク
and e         ;  a = a & e;
jr nz,label_01    ;  if(a <> 0) goto label_01;
set 7,(hl)      ;  pokeb(hl, peekb(hl) | 10000000b);
bit 4,d        ;  if(d & 00010000b){
ret z         ;   return;
            ;  }
rst 20h        ; call 0x0020;           // ウェイト処理かな?
ld bc,402h      ; b=4, c=2             // b はカウンタ c はポートアドレス
ld hl,7e76h      ; hl = 0x7e76          // 乱数格納領域(RAM)の先頭
di            ;                   // 割り込み禁止
             ;label_00:              // 4バイトコピー
inc c         ; c++;                // ポート 03,04,05,06 から
ini           ; pokeb(hl, portin(c)); b--;   // RAM 7e76,7e77,7e78,7e79 にコピー
jr nz,label_00     ; if(b == 0) goto label_00;
ei            ;                   // 割り込み許可
scf           ;                   // キャリーフラグセット
             ;label_01:
ld l,19h        ; l = 0x19h;           // 4バイトコピーで HL レジスタが壊れされるので
             ;                  // 下位バイト再セット(メモリ節約かな)
res 7,(hl)       ; pokeb(hl, peekb(hl) and 01111111b);
ret           ; return;
             ;}
268216 まだズレてる(鬱:01/10/05 06:49 ID:KXU1fK7s
このルーチン(関数)は以下の処理に場合分けできる。

1.ポートからメモリに乱数コピーせず、キャリーOFF で終了
  (このとき 0x7e19 の MSB(bit7) をセットして抜ける)
2.ポートからメモリに乱数コピーして、キャリーON で終了
  (これが普通のゲームの状態と思われ)
3.ポートからメモリに乱数コピーせず、キャリーOFF で終了
  (このとき 0x7e19 の MSB(bit7) をクリアして抜ける)

フツーなら3の部分はいらないはずだが・・・
呼び出し元でどういう処理をしているのだろうか・・・
269216:01/10/05 07:12 ID:KXU1fK7s
>>267 にちょっと間違いあった。ごめん。

誤)jr nz,label_01    ;  if(a <> 0) goto label_01;
正)jr nz,label_01    ;  if(a != 0) goto label_01;

誤)jr nz,label_00     ; if(b == 0) goto label_00;
正)jr nz,label_00     ; if(b != 0) goto label_00;

誤)res 7,(hl)       ; pokeb(hl, peekb(hl) and 01111111b);
正)res 7,(hl)       ; pokeb(hl, peekb(hl) & 01111111b);
270チェキナ名無しさん:01/10/05 08:27 ID:GcDM7QD2
>>216
怪しくもなんともないでしょう。
「7E05Hと7E06Hがそれぞれ前回と前々回にポートを読み込んだ
値のバッファで、レバー入力のエッジを検出してるのかも」とか
「ウェイト期間中にレバーを叩かれた時の処理で、乱数は
始動時に改めて取得するのかも」とかいくらでも思いつくはず。
そのぐらいの想像力もなしに公衆の面前でオナニーするのは止めるべき。
というか、今度のは新たにラッチされないバイナリカウンタを
2回以上読むから起こるわけで、それはコードがどうであろうと
不可避でしょ?

結論:見当違いの板汚し
271(∠Θ):01/10/05 08:37 ID:PdzuDVwo
   ∧∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  (,,゚Д゚) < 裁判長これは名誉キソーンでは!
〜(___ノ  \______________

                    ∧_∧
                   (゚ー゚*) 却下します
              トン!> ┣⊂⊂ |
                  | ̄ ̄ ̄ ̄
272チェキナ名無しさん:01/10/05 09:12 ID:lKSj3XzE
実際に仕込みかどうかわ分からないが、ハード屋とソフト屋の連携がちゃん
と出来ていなかったんでは?(ファームといえどソフト屋とハード屋は別れ
てるんでしょ?)
個々のプログラムのロジックは正しいと思うが(見たわけじゃないけど、そ
こまではねえ〜)、ハードウェアとのIN信号で不整合が起こる隙間があっ
たってことでしょ?リアルタイム系制御では許されないことだと思うけど・
・・。ソフト開発側が信号の出方に問題があることを指摘してあげるべき問
題じゃない?ハード仕様書の類から読み取れないようなものなのかな?だっ
たらハード屋の怠慢。その手の仕様に記述が見られたら、ソフト屋の怠慢だ
な。(分かっててそのまま製造したなら仕込み1確目、でもこのバグ仕込み
と言われても仕方ないねえ。ポカミスもいいとこだよ。)
273216:01/10/05 09:13 ID:yTeDsRVc
>>270
ちょっと待ってくれ。俺は怪しいとか一言もいってないよ?
俺としては何故 a reg. の not,or,and なんてめんどくさい
処理をするんだ?ってとこが「変に思える」わけよ。

あんたもプログラマーなら、この処理見て不自然に思わない?
なんか理由がなきゃこんな書き方はしないよね。

このルーチン自体が3パターンの返り値を返す必要があるかどうかは
呼び出し元を見ればはっきりするじゃん?それを「知りたくなった」
って言っただけだよ。
274いんぼう:01/10/05 09:40 ID:vAYCLVpk
単純な感想として
今回のって、プログラム・設計は灰色だけど、周辺の状況証拠は黒に思えるのですが。
確かに部品の共通化によって同部品が長く使われたため被害が大きくなったことは理解できる。

ただ(確認はしていないが)、最新機種から対応されているのはどういうことだ?

あと、対策がやけに早くないですか?さみーの公式では発覚は先月末ですよね。
部品調達、製作を含めてそんな短期間に数がそろうものなのですか?

他でも書いたのですけど、この攻略法を一番生かせるのってサミーの台ですよね。
はずれを連続させたり、りぷを連続させたり。
小役の連続はあからさまにやりすぎると目立ってしまうと思うんですよ。
275損するのはいつも一般客 :01/10/05 09:52 ID:e8db4aQk
>>274

凄いいい点ついてるねー
確かにそれかんがえると怪しい
もし仕込みなら、何かしらの形で責任とっつえもらわないと
本当に割りにあわないよねー?
(PGさんたちの意見もふまえて)
276チェキナ名無しさん:01/10/05 09:59 ID:baTW7OU.
獣王⇒Hb⇒Wチャ⇒猫
進化してる
277チェキナ名無しさん:01/10/05 10:00 ID:kZdSmieI
>>274
ん?対応されてないぞ? ゴールド縦横もできる。
278チェキナ名無しさん:01/10/05 10:08 ID:vAYCLVpk
>>277
だから、一応括弧つきでかいたのよ。
最初のころの情報でG縦横はだめ見たいのがあったんで、先入観を持ってしまい・・・。
幻?の三平はどうなんだろう。
279チェキナ名無しさん:01/10/05 10:19 ID:kZdSmieI
>>278
雑誌で見た限りでは同じ筐体っぽいから、
そのまま出してたらやっぱり出来ちゃってたんだろうね。

対策部品がどうゆうものかは良くわからないけど、
わりと簡単な部品なら発注すればすぐ出来るよ。数は特に関係ないし。
280チェキナ名無しさん:01/10/05 10:21 ID:kIyZHrL2
チェキナ名無し どっかいってくれよ
281zita:01/10/05 11:00 ID:6bv.CrvI
>>278
三平は発売延期みたいだからどうかな、
対策してなかったんじゃないかな。
282チェキナ名無しさん:01/10/05 11:35 ID:uTWSHMkM
つか、リールスタート時に乱数拾えないって時点でOutじゃないの?
通常のロジックでは考えられないと思うが?
283チェキナ名無しさん:01/10/05 11:38 ID:etQEcyTo
>>282
このスレを頭から読んでみてみ。 Outなところが分かるから。
284チェキナ名無しさん:01/10/05 11:38 ID:GcDM7QD2
>216
こんな時期に「変だ」なんて言えるあなたの感性を疑っているわけで。
それ以前に、notしてorしてandしても全然変じゃないです。
レバーの入力がどう遷移したときにドラムは回りますか?
同じ遷移が起きても、他の入力の状態によっては回りませんよね。
その時もある変化は起きますよね。
そういう実際の台の挙動を考えたら、このコードは
変どころか最適解に近いであろうと察しが付くはずなんですけど。
素人でなければ。
285チェキナ名無しさん:01/10/05 11:51 ID:fPZLz5Qo
全くの素人の感想です。

@バグなら→サミーはどうしようもなく低能。もう作るな
A仕込なら→サミーはどうしようもなく低能。もう作るな。

両者を総合すると・・サミー、もう作るな.
286seven:01/10/05 11:54 ID:cLNIX0KM
仕込みっていうかね、
CR 以前のデジパチみたいに、内規からはずれた仕様で
保通協を通過させるための仕組みってカンジがしない?

攻略法を使わないと、このコピー現象は起きないの?
前回と同じ乱数値をたまに拾う、って方法で連チャンしてた
パチンコ台って、結構あったよね。

この方法なら波が荒くなるけど、コンチネンタルみたいに
機械割下げておく必要ないし。

どうかな?
でも、やっぱり知ってるヤツだけが稼ぐ、しかも株で大もうけして締める、
っていうだけのことなのかしら。
287チェキナ名無しさん:01/10/05 11:55 ID:DX.ippUk
>>285
低脳は考えが短絡的でいいねぇ(笑)
288285:01/10/05 12:34 ID:jaLzM25g
いいでしょ?複雑な過程は頭のいい人に任せて
結論だけはわかるかなと。
289216:01/10/05 13:10 ID:6RGzePnw
>>285 あーなるほどね。

7e05H がレバー入力状態をしめすポートで
7e06H がウェイト状態時をしめすポート
ということは想像できるね。なら全く問題ないよ。
290216:01/10/05 13:12 ID:6RGzePnw
あ、すまん。>>285じゃなくて>>284だったわ。
291チェキナ名無しさん:01/10/05 13:36 ID:5o13Qojk
>>263
すばらしくわかりやすい説明ありがとうございます。

さらに、レバーを最大限に倒した位置が、
ちょうどその半クラ状態になってしまうことにより、永久同値が発生して、
ガイドにあった、インディでずっと青青青といったことになってしまうかもしれないと先生がいってました。
292チェキナ名無しさん:01/10/05 13:44 ID:pJUFmR4M
>>291
永久ってことは無いんだが。一応乱数の書き換えは行われるので。
293291:01/10/05 13:55 ID:5o13Qojk
>>292
乱数書き換え回路の方に信号がはいらないと、
書き換えは起こらないんでしょ?
294292:01/10/05 14:15 ID:pJUFmR4M
いや、だから信号自体は発生しているんだって
乱数取得より役判定処理を優先しちゃう為今回の騒ぎになった、と解釈しているが
295チェキナ名無しさん:01/10/05 14:21 ID:GcDM7QD2
>>289
大ハズレ。またもや見当違い。
ただの素人サンだったのね。ごめんね、いじめちゃって。

>>291,292
293が正解。
乱数書き換え回路というのがあるわけじゃなくて、
ttp://www.semicon.toshiba.co.jp/ja/bucat_1/bucat_0/bucat_2/td_84/TD.pdf
このIC部品ひとつが「カウンターの更新」「カウンター値のラッチ(保存)」、
「ラッチされている値の出力(CPUへの吐き出し)」の3つ全部やってるんですが、
攻略時はラッチのピン(RCK、13ピン)にだけ、きちんとした信号が入りません。
296291:01/10/05 14:39 ID:5o13Qojk
>>295
回路はぜんぜん知識ないので勉強したいです。

その回路は、
普段は一生懸命カウンターの更新を行っていて、レバー信号がきたときに
そのときの値を特定の場所(?)に保存(ラッチ)、さらにカウンターの更新をがんばる。
でいいんですね。

>「ラッチされている値の出力(CPUへの吐き出し)」
これはどういったタイミングで行っているんですか?
CPUからの要請があったときでしょうか?
297292:01/10/05 14:56 ID:pXp0dw2k
>>295
スマン、ちょっと教えて。
上記のurl読めないのだが乱数を生成する外部チップでよろし?
スロ専用でわ無いときいているが。
で、
>攻略時はラッチのピン(RCK、13ピン)にだけ、きちんとした信号が入りません。

この結果どうなるの?
メインの処理では乱数を一旦メモリに取得しているはずだが
攻略法使用時はこれが行われないってことか?
だとすると永久的にって事になるが、無制限に抜けるって話ではないのでは?
298チェキナ名無しさん:01/10/05 15:04 ID:GcDM7QD2
>>296=261
そのとおりです。>>193 でいうところの 06D2' ini という命令によって
ICにアクセスが起きた瞬間、G(14ピン)に信号が入ります。
これによって最後にラッチされた値が出力され、それをCPUが取り込む
という仕組みです。
299チェキナ名無しさん:01/10/05 15:35 ID:mo0UnRZg
193にハードボイルドのコードを一部アップした者です。
216さんがいろいろ想像してますが、べつにこのプログラム自体は怪しくないです。
乱数発生器のラッチが、ちゃんとCPUの読み出し信号でかかるようになって
いれば、これで何の問題もなかったはずです。
だけど、もしこういうハード仕様をプログラマーが知っていたとすれば、
06CAあたりに時間稼ぎのプログラムを挿入すべきところでしょう。
かなり長時間のウェイトが必要です。
7e05h,7e06hは数百Hzのタイマー割りこみで更新されるので、これらが
最後に更新されてからレバーON判定までに、最大で数十msecが経過する
ことになります。それでも上手にレバーを叩けばほぼ100%コピれるらしいので、
数十msec程度のウェイト挿入ではダメなんでしょうね。0コンマ数秒くらい
ないと不安です。
こういう仕様のハードなので、もし今回の事件が一部開発者の陰謀としても、
プログラマーまで巻きこむ必要はなかったと思います。
回路設計者がぁゃしぃ。
300チェキナ名無しさん:01/10/05 17:23 ID:z1J3apIE
良スレだ!