[分享,討論]讀取螢幕上某一點是否為黑

版主: 總版面管理員

回覆文章
頭像
moon2003
會員
會員
文章: 132
註冊時間: 2003-07-18 3:08 PM
來自: NERV

[分享,討論]讀取螢幕上某一點是否為黑

文章 moon2003 »

機密技術文章區中希洛的[轉貼]GVBASIC教學精華集PART2 寫: GVBASIC之讀取螢幕象素最優演算法 作者:Coolsoft(R)
以下代碼可以讀取螢幕上某一點是否為黑!
此方法用在我的"歡樂潛水艇"裏面,非常成功!速度很快!
K=PEEK(INT(PX/8)+PY*20+2496)
TP=INT(PX-8*INT(PX/8)+1.55)
PS=INT(K/2^(8-TP))-INT(K/2^(9-TP))*2
其中,PX為螢幕上X軸座標,PY為Y軸座標,返回值PS為判斷值,如果PS=0,則表示螢幕上那一點為白的,否則為黑的。
我用NC3K試過,似乎不太管用,後來去參照"歡樂潛水艇"第9100行的程式碼,我覺得這樣改寫後應該沒錯了:
A=PEEK(INT(X/8)+Y*20+6592)
B=INT(X-8*INT(X/8)+1.55)
C=A
A=INT(A/2)
D=C-A*2
如果D=1,螢幕上的點就是黑的
如果D=0,螢幕上的點就是白的(...這樣講怪怪的,應該說"不是黑的")
最後附上範例程式:JUDGE.BAS
附加檔案
JUDGE.BAS
JUDGE.BAS
(278 Bytes) 已下載 844 次
檻菊愁煙蘭泣露。羅幕清寒,燕子雙飛去。明月不諳離恨苦,斜光到曉穿朱戶。
昨夜西風凋碧樹。獨上高樓,望盡天涯路。欲寄彩箋兼尺素,山長水闊知何處。
頭像
冰浩
版面管理員
版面管理員
文章: 447
註冊時間: 2003-07-18 8:50 PM
來自: 不存在的世界
聯繫:

文章 冰浩 »

那是因為不同的機形的PEEK碼不同的緣故
教學中的因該是pc1000的peek碼吧
頭像
希洛
一級會員
一級會員
文章: 319
註冊時間: 2003-08-15 5:01 PM
來自: 遠太天邊、近在眼前的世界
聯繫:

文章 希洛 »

其實我轉再再技術文件內就有類似的公式了,大家可以參考看看。
頭像
helldeathscyt
二級會員
二級會員
文章: 383
註冊時間: 2003-07-17 8:35 PM
來自: 深淵地獄
聯繫:

文章 helldeathscyt »

果然可以查看黑點
我一值想找這ㄍpeek
謝謝啦
吾乃地獄之王,是為散播毀滅的種子,掃除所有塵世汙穢,平息痛苦之哀號
~地獄死神

白目橫行的時代...orz
網路真奇妙,
處處白目擾,
趕也趕不走,
白目死不了.
回覆文章