İçindekiler:

Lapcade Arcade Kontrol Cihazı: 6 Adım (Resimlerle)
Lapcade Arcade Kontrol Cihazı: 6 Adım (Resimlerle)

Video: Lapcade Arcade Kontrol Cihazı: 6 Adım (Resimlerle)

Video: Lapcade Arcade Kontrol Cihazı: 6 Adım (Resimlerle)
Video: 07 29 81 2024, Eylül
Anonim
Lapcade Oyun Salonu Denetleyicisi
Lapcade Oyun Salonu Denetleyicisi

Ben çok oyuncu değilim. Ben çocukken, onları oynamaktan çok nasıl çalıştıklarını görmekle ilgileniyordum. Bir yandan düzenli olarak kaç tane atari oyunu oynadığımı sayabilirim. Olduğu söyleniyor, birisi için bir arcade denetleyicisi yapmak için zaman ayırmamı garip bulması kolay olurdu. Ancak, şu ana kadar en sevdiğim projelerden biri. Tasarlamak, kodlamak ve inşa etmek için zorlu olmasının yanı sıra, aynı zamanda sağlam mekanik düğmeler ve joystick'lerin geçmiş dönemini hatırlatıyor.

Arcade günleri geride kaldı ama yine de kendi oturma odanızda klasik bir arcade oyunu hissine sahip olabilirsiniz. İşte size Lapcade'i sunuyorum. Siz de benim gibiyseniz ve oyun oynamaktan çok bir şeyler inşa etmekten hoşlanıyorsanız, bu derlemeden keyif alabilirsiniz. Aşağıdaki "sürüm 2 için fikirler" bölümünde yer almayan herhangi bir sorunuz veya öneriniz varsa, lütfen yorum bırakın.

1. Adım: Genel Bakış

genel bakış
genel bakış
genel bakış
genel bakış

Bu da ne?

İlk olarak, lütfen Lapcade'in ne olmadığına dikkat edin:

  • Oyun konsolu değildir.
  • Oyun yok, oyun yükleme ve oynama özelliği de yok.
  • Bir TV'ye veya monitöre bağlanmıyor.

Lapcade bir Bluetooth klavyedir. Ne fazla ne eksik.

Bu konuyu gündeme getirdim çünkü bu noktada bazı karışıklıklar oldu. Üzerine hangi oyunların yüklenebileceği ve ne tür video arabirimi kullandığı hakkında çok fazla sorum var - yapamaz ve yapmaz! Tamamen bağladığınız PC'ye bağlıdır ve bu bakımdan sınır gökyüzüdür. Cihazınız bir Bluetooth klavyeyi kabul edebiliyorsa, Lapcade bununla çalışmalıdır. Denemedim ama elde taşınabilir cihazlara bağlı EZ-Key'i (aşağıda açıklanmıştır) kullanan başka projeler gördüm. Yani teorik olarak bu cihazı Windows, Linux, ChromeOS, MAC vb. çalıştıran herhangi bir bilgisayara ve Raspberry Pi, Android, iOS ve Bluetooth v2.1'i destekleyen diğerlerine bağlayabilirsiniz. Bununla birlikte, anahtar kodlarının değiştirilmesi gerekebilir.

Ön Sürüm 1

Başlangıçta, Adafruit Bluefruit EZ-Key bluetooth HID (İnsan arabirim cihazı - klavyeyi düşünün) adında, tanıdık tıklama düğmelerini bağlamama ve klavye gibi tuş vuruşları göndermeme olanak tanıyan bir ürün buldum. EZ-Key'e dayalı bir denetleyiciyi ilk kurduğumda, basit ve doğrudan bir denetleyici oluşturmak için bir dizi talimatı takip ettim ve harika çalıştı. Denetleyiciyi birkaç ay boyunca ağır bir ahşap çerçeve içinde sorunsuz kullandım. Ancak, 12 girişle sınırlısınız ve cihaz tarafından iletilen tuş kodunu EZ-Key giriş pinlerini yeniden programlamadan değiştirmenin bir yolu yok.

Yüklü oyunları görüntülemek için Kodi medya merkezimi kullandığım için, birden fazla denetleyici/uzaktan kumanda kullanmak zorunda kalmadan medya merkezini kontrol etmek ile oyun oynama arasında geçiş yapmak istedim. Ayrıca cihazı sol elini kullanan oğlumun istediği gibi kullanabilmesi için ayarlatmak istedim.

Ayrıca cihaza güç sağlamak için 4 adet AA pil kullanıyordum ve kutudan çıkar çıkmaz düşük güç moduna sahip görünmüyordu. Piller kullanılmasa bile bir veya iki gün içinde emilerek kurur.

Bu yüzden, bir arkadaşımın ısrarı üzerine, aynı kontrol cihazının hızlı mod değişiklikleri olan programlanabilir bir versiyonunu oluşturmaya karar verdim, aynı cihazı birden fazla uygulamayı kontrol etmek için kullanmama izin verecek, ayrıca sol el için "çevrilebilir" Kullandım ve şu anki 10 lb çözümümden çok daha az olan bir dizüstü bilgisayar kasasındaydı.

Yükseltme zamanıydı.

Versiyon 1 DesignProject Hedefleri:

  • Esnek
  • şarj edilebilir
  • Solcular ve Sağcılar için
  • Kablo yok
  • Hafif

Bu yeni tasarımın esnek olmasını istedim. Kontrollerin, her test veya değişiklik yapılması gerektiğinde bileşenleri yeniden programlamak zorunda kalmadan anında değiştirilebilir olması gerekir. Bu, çalışma "modlarını" seçmek için kontrolör üzerinde bir arabirimin olması gerektiği anlamına geliyordu. Her düğme ve joystick konumu, kendisiyle ilişkilendirilmiş farklı anahtar kodlarına sahip olmalıdır. Aynı kontrollerin farklı modları seçmek için de kullanılması gerekir.

EZ-Key, gerçek zamanlı olarak doğrudan programlanabilir değildi, bu nedenle bir sonraki çözüm, işlevselliği yönetmek için Arduino gibi bir denetleyici kullanmak olacaktır. EZ-Key yalnızca tuş kodlarını Bluetooth üzerinden PC'ye iletmek için kullanılacaktır. Arduino Pro Mini'yi UNO ile (daha önce deneyimlediğim) doğrudan uyumluluğu ve kompakt boyutu nedeniyle seçtim.

Lapcade'in selefi ile yaptığım gibi bu yeni kutuyla pillerle uğraşmak istemedim, bu yüzden bir Lityum Polimer şarj edilebilir pil ve şarj cihazı/besleme kartı kullanmayı seçtim. Bu, sadece standart bir USB şarj cihazı kullanabileceğim anlamına geliyordu. Ayrıca piller her bittiğinde kasayı açmak zorunda kalmayacağım anlamına geliyordu. EZ-Key ve PowerBoost 500C, eşleştirme durumu ve düşük pil göstergesi için denetleyicinin üstüne aktarılması gereken göstergelere sahiptir. Bu kullanışlı durum göstergelerini kullanım sırasında kullanıcıya yansıtabilmek için tasarıma bazı LED'ler ekledim.

Tasarımımın testleri olgunlaştıkça, bazı orijinal fikirlerimin beklediğim gibi olmadığını keşfettim. Örneğin, PowerBoost üzerindeki LBO göstergesi, bir mikro denetleyiciye bağlandığında beklendiği gibi çalışmıyor. Cihaz "kapalı" veya devre dışıyken akımın pilden ortak topraktan geçmesine izin verecek, LBO ışığı yanacak ve yanık kalacaktır. Adafruit forumundaki diğerleri de bu sorunla karşılaştı ve pil voltajını doğrudan bir analog girişte örneklemede daha iyi bir çözüm önerdi. Voltaj belirli bir seviyeye düştüğünde, kullanıcıya pilin kapanmak üzere olduğunu bildirme zamanı gelmiştir.

Adım 2: İhtiyacınız Olan Şey

Elektronik Parça Listesi

Bu, oldukça karmaşık bir yapı haline geldi. Benim kullandığım parçaları kullanmak zorunda değilsiniz ama yedek parça kullanıyorsanız diğer devreler ve kodlarla nasıl etkileşeceğini anladığınızdan emin olun. Öneriler sunmaktan memnuniyet duysam da farklı yapılandırmalar için kod veya sorunları gidermeye yardımcı olamam.

1 Arduino Pro Mini 5V - Kompakt olduğu için Pro'yu seviyorum. Sağlanan kodla herhangi bir Uno pin/interrupt uyumlu kartı kullanabilirsiniz.

1 Adafruit Bluefruit EZ-Key bluetooth HID - Yukarıda açıklandığı gibi, bu, anahtar kodlarının ana bilgisayara iletilmesine izin veren bluetooth HID'dir.

1 MCP23017 - i2c 16 giriş/çıkış bağlantı noktası genişletici -Bu çip, I2C iletişim protokolü aracılığıyla Arduino'ya 16 giriş daha eklemek için kullanılır

1 Adafruit PowerBoost 500 + Şarj Cihazı - Bu, Lapcade'e güç sağlamak ve LiPo'yu şarj etmek için kullanılan güç kontrol kartıdır.

1 adet Lityum Polimer pil (2500mAh kullandım ancak daha yüksek/düşük kapasite kullanabilirsiniz)

1 8-Way Arcade Joystick - Lütfen joysticklerle ilgili olarak aşağıdaki "sürüm 2 için düşünceler" bölümüne bakın

9 Arcade Basmalı Düğmeler - Çeşitli renkler ve serigrafi

2 adet aydınlatmalı anlık buton - Bu 2 düğmeyi Merkez 4 ve 5 düğmeleri için kullandım ve Adafruit'ten: Kırmızı (Merkez 4), Mavi (Merkez 5)

1 Işıklı kilitleme düğmesi Adafruit'in güç düğmesi için bunu kullandım: Yeşil

2 LED Eşleştirme sinyalini ve düşük pili referans almak için kullanılır. İki RadioShack parçası 2760270 ve 2760271 kullandım

1 16 x 2 LCD ekran

1 I2C/SPI LCD sırt çantası - 16x2 ekrana I2C iletişimi için kullanılır.

1 Panel Montajlı USB uzatma kablosu - PowerBoost'un mikro-b USB konektörünü kabin duvarına uzatmak için kullanılır.

1 Adafruit Perma-Proto Tam Boy Breadboard PCB - Gerekli değildir ancak kalıcı montajı çok daha kolay hale getirir.

5 220 Ohm Dirençler

7 1K Ohm Dirençler

2 2.2K Ohm Direnç

1 4.7K Ohm Direnç

18 #10 Dişi Maça Konnektörleri - Arcade düğmesi kontaklarına bağlanmak için. Düğmeler sonunda yıpranacağı için lehimleme yerine önerilir.

22 gauge bağlantı kablosu - Serbest duran kablo yönetimini yapmak için sarmal yerine sağlam bağlantı kablosu kullandım. Bu tamamen tanıtım amaçlıdır ve katı tel kırılgan ve kırılmaya meyilli olduğu için önerilmez.

Aşağıdaki öğeler gerekli değildir, ancak montajı daha basit hale getirecek ve bir bileşeni kızartmanız durumunda değiştirmeyi kolaylaştıracaktır:

  • IC Soketi - 28 pimli 0,3" Çipler için
  • IC Soketi - 28 pimli 0,6" Çipler için
  • 0.1" Dişi başlık (en az 1 36 pinli başlık)

Dolap Parçaları:

  • 3 12 x 24 1/8 inç huş paneller
  • 1 12 x 24 1/8 inç şeffaf akrilik panel

Dosyalar:

  • Lapcade V1.xlsx - Devre bağlantılarını içeren aşağıda belirtilen elektronik tablo.
  • LapcadeV1-code.zip - Bu proje için yazılmış Arduino kodunu içeren zip dosyası.
  • Lapcade_v1.zip - Kabin için svg çizimlerini içeren zip dosyası.
  • LapcadeV1-Circuit_Diagram_Large.zip - Aşağıda gösterilen fritzing devre şemasının yüksek çözünürlüklü versiyonunu içeren zip dosyası.

Daha fazla kaynağa bağlantılar:

  • Adafruit Bluefruit EZ-Key Dokümantasyonu
  • Adafruit PowerBoost 500 + Belgeler
  • I2C/SPI LCD Sırt Çantası Belgeleri
  • MCP23017 I2C Bağlantı Noktası Genişletici Belgeleri
  • Adafruit MCP23017 Arduino Kütüphanesi

Adım 3: Montaj - Kabine

Montaj - Kabine
Montaj - Kabine
Montaj - Kabine
Montaj - Kabine
Montaj - Kabine
Montaj - Kabine
Montaj - Kabine
Montaj - Kabine

Dayak da alabilecek çok hafif bir kutuya sahip olmak istedim. Malzemeler konusunda fazla egzotizm olmadan, hafif eşittir ince ve ince genellikle kırılgandır. Lapcade'in birincil kullanıcısı, büyük olasılıkla, düğmelere "basmayı" ve joystick'i aşırı coşkuyla "gezinmeyi" seven küçük oğlum olacaktır. Bir şeyleri düşürmemekte iyi olsa da, endüstriyel mikro anahtarları birkaç ay içinde tek bir joystick'te yıpratmayı başardı.

Bu sorunun üstesinden gelmek için ve Lapcade 20 genişliğinde olduğundan, tasarımım üst, sol ve sağ tarafları sabitleyen iki dikey nervür ekledi. Kuru montaj sırasında tasarım, üzerine yerleştirilen 70 lbs'lik kitaba dayanabildi. Yapıştırıldıktan sonra, kutu daha da dayanıklı hale geldi. Kesilen malzemeleri aldıktan sonra, çalıştıklarından emin olmak için önce tüm panelleri gevşek bir şekilde birleştirdim, sonra hafifçe zımparaladım ve hava tozunu aldım. Parçaları birbirine yapıştırmak için ahşap tutkalı kullandım.

Aşağıdaki fotoğraflardaki kitaplar, yeni yapıştırılan parçalara sertleşinceye kadar baskı yapmak için yerleştirildi. Tutkal kuruduktan sonra kenarları zımparaladım. Tasarımım, panelleri kasıtlı olarak dengeledi, böylece köşelerde biraz dışarı çıkacaklardı. Bu, zımparalama sırasında derzlere çok fazla girmeden köşeleri yuvarlamamı sağlıyordu.

Yüzeyleri temizledikten sonra, birkaç kat poliüretan uyguladım - katlar arasında kürlenmeye izin verdim. Sonuç, akrilik bir alt kapağa sahip hafif bir ahşap kutuydu. Başlangıçta tamamen şeffaf bir kutu istemiştim ama bana huş ağacı "test" parçalarını gönderdiğinde hemen fikrimi değiştirdim. Sadece daha hafif değildi, aynı zamanda kabine oyunu fikrine güzel bir geri dönüş oldu. svg dosyaları aşağıdadır.

Lütfen Dikkat: Bu çok katmanlı bir çizimdir ve her katman, bir malzeme yaprağındaki bir kesim setini temsil eder. Kesicinize bir baskı gönderirken, kesmeden önce diğer tüm katmanların gizlendiğinden emin olun.

Bir Diğer Not: LCD ekranın alanını çizerken elimdeki bir ekranı ölçümler için kullandım. Çizimi yaptığım ve daha sonra parçaları kasaya yerleştirdiğim zaman arasında, orijinal LCD'yi başka bir projede kullanmış ve yenisini sipariş etmiştim. Görünüşe göre, ikincisinin montaj delikleri orijinalinden biraz farklıydı ve sıraya girmedi. Bu nedenle, malzemenizi kesmeden önce, sahip olduğunuz parçaların çizimdeki deliklere uyduğunu iki kez kontrol etmeye özen gösterin.

Üçüncü Bir Not: Orijinal çizime USB şarj kablosu için bir kesik eklemedim çünkü onu nereye koymak istediğimden emin değildim, böylece kullanıma engel olmayacaktı. Daha sonra, aşağıdaki resimlerde "Lapcade" kelimesini gördüğünüz yere çok yakın sol tarafta delikler açtım. Sürüm 2, şarj portunu henüz farklı bir konumda tutacaktır.:)

Adım 4: Montaj - Elektronik

Montaj - Elektronik
Montaj - Elektronik
Montaj - Elektronik
Montaj - Elektronik
Montaj - Elektronik
Montaj - Elektronik
Montaj - Elektronik
Montaj - Elektronik

İlk önce yukarıda gösterilen bağlantı şemasına bir göz atalım.

Burada dikkat edilmesi gereken ilk şey, breadboard'un güç ve toprak raylarının olmasıdır. Mavi çizgili raylar toprak (-) ve kırmızı çizgili raylar güç (+). Bu standart ama not alıyorum çünkü joystick'in (siyah tel) ortak hattı toprağa değil güce bağlı. Fritzing'de, geleneksel renk yerine joystick'in tel rengini kullandım ve bunun biraz karışıklığa neden olabileceğini düşündüm - bu yüzden bunu ortadan kaldırmak en iyisi.

Bileşen Bağlantıları

Burada her bağlantıyı uzun formda ifade etmeye çalışmak yerine (Arduino analog pin 0, PowerBoost Bat pinine 220 ohm'luk bir dirençten geçer), bileşen açısından tüm bağlantıları içeren bir elektronik tablo oluşturdum. Yani, elektronik tablonun Arduino sekmesinde APM A0 -> 2.2K OHM -> PB Bat göreceksiniz ve PowerBoost sekmesinde PB BAT -> 2.2K OHM -> APM A0 göreceksiniz. Bu projeyle ilişkili tüm dosyalar için lütfen aşağıdaki kaynaklar bölümüne bakın.

Elektronik tabloyla ilgili bir diğer not, bazı cihazların iki bağlantı sütunu göstermesidir. Bu, bir pime birden fazla bağlantı göstermek içindir. Örneğin, ortak kablo dışındaki joystick bağlantılarının her biri, bağlantı noktası genişleticinin sabit bir yüksek veya düşük sinyal almasını sağlamak için bir aşağı çekme direnci kullanır. Bunu Joystick 2 için göstermek için, biri joystick kablosu için MCP 21 pimine ve diğeri pim 21'den bir direnç üzerinden toprağa bağlantı için olmak üzere bağlantı için iki sütun göreceksiniz. Eminim bunu belgelemenin daha iyi yolları vardır ama korkarım bu konuda benim yöntemlerime takılıp kaldınız.:)

Atari butonlarının her birinin ortak (com), normalde açık (hayır) ve normalde kapalı (nc) bir kontağı vardır. Bu düğmelerin her biri için com ve nc bağlantılarını kullanıyorum.

Adım 5: Kod

kod
kod

Her şeyden önce, gerektiği yerde kredi vermem gerekiyor. Lapcade'i kodlamak için aşağıdaki makaleye büyük ölçüde güvendim:

learn.adafruit.com/convert-your-model-m-keyboard-to-bluetooth-with-bluefruit-ez-key-hid İyi yazılmış ve belgelenmiş bir proje için Benjamin Gould'a özel teşekkürler!

Yani, bu projenin kalbinde bir klavye var. PC açısından bakıldığında, Lapcade, EZ-Key'in bu kadar iyi olduğu şey olan bluetooth üzerinden bağlanan bir klavyedir. Karmaşık Bluetooth protokollerini, zamanlamaları ve kodlarını alır ve bunları kapsüller, böylece arduino ile tek yapmam gereken anahtar kodlarını göndermektir. Bunu yapmak için yukarıdaki projedeki kod haritalarını ve kendi dizilerimi kullanarak operasyonel modlar oluşturdum. Her mod, aynı düğmeye basıldığında Lapcade'de yapılanları ve PC'ye gönderilenleri değiştirir. Üç "yerleşik" çalışma modu vardır ve bunlardan sonraki tüm modlar uygulama modlarıdır.

Operasyonel Modlar

Aşağıda Lapcade'in çalışma modları özetlenmektedir:

  1. Başlangıç - Bu mod, PC ile bağlantıyı kontrol eder ve başlangıç değişkenlerini ayarlar. EZ-Key bir PC ile eşlenmemişse, Eşleştirme Moduna geçer
  2. Eşleştirme - Bu modda EZ-Key bir PC ile eşleştirilmeyi bekliyor.
  3. Mod Seçimi - Bu mod, kullanıcının hangi uygulama modunu kullanacağını seçmesini sağlar. Bu modda bilgisayara hiçbir tuş kodu gönderilmez. Önceki uygulama moduna göre hızlı mod seçimleri de vardır. Örneğin, Mame Player 1 modundayken mode ve ardından oynatıcının iki düğmesine basmak, ekranda Mame Player 2'yi aramak ve seçmek zorunda kalmadan modu değiştirir.

Uygulama Modları

Uygulama modları, kullanıcının hangi uygulamada bulunduğuna bağlı olarak bilgisayara uygun anahtar kodları göndermek için kullanılır. Örneğin Kodi modunda eylem 2 tuşu, duraklama olan "P" gönderir. Mame'de aynı düğme sol Alt tuşunu gönderir. Eğer biri PC için Minecraft oynamak için denetleyiciyi kullanmak isterse, yapılması gereken tek şey uygun dizi haritalarını eklemektir.

Her uygulamanın 4 veri dizisinde tanımlanması gerekir.

  • mode - Bu dizi, her mod için ekranda gösterilecek metni içerir. Ekranın ikinci satırını kullanmak için, diziye satır sonu olarak bir ~ yerleştirin.
  • keyModes[14] - Bu matris dizisi, PC'ye gönderilen anahtar kodlarını içerir. 14 öğeden oluşan her satır, anahtar kod eşlemelerine yönelik ayrı düğmeleri temsil eder.
  • keyModifiers[14] - Bu matris dizisi, shift tuşunu basılı tutmak gibi her tuş vuruşu için tuş kodu değiştiricilerini içerir.
  • quickMode[3] - Bu matris dizisi, geçerli mod için hızlı mod seçim modelini içerir.

Temel operasyon

Sistem açıldığında, Bluetooth bağlantısının durumunun kontrol edildiği ve kullanıcıya gösterildiği başlangıç moduna geçer. Arduino, EZ-Key'in L1 pininden gelen darbeleri sayarak ve zamanlayarak EZ-Key'in durumunu alır. Başlangıç modu için dört alt durum vardır:

  • Eşleştirme - EZ-Key, bir cihaza bağlanmayı bekleyen etkin eşleştirme modunda.
  • Eşleştirildi ancak Bağlı Değil - EZ-Key daha önce eşleştirildi ancak şu anda ana cihaza bağlı değil.
  • Eşleştirilmiş ve Bağlandı - EZ-Key eşleştirildi ve ana bilgisayarla bağlantı kuruldu. Bu noktada sistem Mod Seçimine geçecektir.
  • Bilinmeyen Durum - EZ-Key, bilinmeyen bir kod döndürüyor veya bilinmeyen bir sinyal modeli üreten sinyal paraziti var. Sistem tutacak ve kullanıcıya bildirecektir. Bu meydana gelirse yeniden başlatılmalıdır.

Sistem PC ile eşleştirilmiş ancak PC'ye bağlanamıyorsa, sistem başlangıç modunda bağlantı durumunda kalacaktır. Kullanıcı cihazı açarken kaçış düğmesini basılı tutarsa, Bluetooth bağlantı kontrolünü atlayacak ve Mod Seçimine geçecektir.

Sistem daha önce eşleştirilmediyse, Başlangıç Modunun yerine Eşleştirme Modu gelir. Bu durumda sistem, eşleştirme için uygun olduğunu yayınlayacaktır. Bir ana bilgisayar tarafından keşfedilip eklendiğinde, Mod Seçimine geçecektir. Cihaz, Eylem 1 düğmesine basılarak Mod Seçiminde eşleştirilemez.

Mod Seçiminde, yukarı ve aşağı joystick eylemleri sizi LCD ekranda mevcut uygulama modları arasında hareket ettirecektir. Modlardan birini seçmek için giriş düğmesine (orta 5) basın.

Bir uygulama modundayken, düğmelerin her biri ve joystick, yukarıda açıklandığı gibi dört dizide belirtilen tuş haritalarına göre tuş kodları gönderir.

Hızlı Modlar

Bir Uygulama Modu seçildiğinde, hızlı mod tanımı ayarlanır. Basitçe söylemek gerekirse, Hızlı Modlar, ilk üç orta düğme (Merkez 1-3) tarafından seçilebilen Uygulama Modlarıdır. Bu üç düğme, matristeki dizi elemanına karşılık gelir.

Örneğin, mevcut konfigürasyonda, Mame'i oyuncu 1 modunda kullanırken (Mod 4 veya beşinci mod tanımlandı), ardından mod düğmesine basmak ve ardından oynatıcı iki düğmesine basmak hızlı mod [4][1] dizi öğesini yükler (Arduino kullanır 0 taban dizi indeksleme) 5'tir. Sistem daha sonra Mame, oyuncu 2 olan Uygulama Modu 5'e geçer.

Adım 6: Sürüm 2 için Fikirler

Düğme Ekranı - Sanırım her şeyi planlayamazsınız ama birinci sürüm için daha önce sahip olmayı dilediğim bir tasarım fikri var - ayrı düğmeli LCD paneller. Sadece hangi modda olduğunuzu bilmenin her bir düğmenin ne yaptığını hatırlamanız anlamına gelmediği, özellikle birkaç gün veya ay boyunca ondan uzaklaştıktan sonra çok hızlı bir şekilde ortaya çıktı. Şu anki eyleminin ne olduğunu gösteren her düğmenin üzerine veya üstüne bir tür küçük ekran eklemiş olmayı gerçekten isterdim. Bu, sürüm 2 için listemin başında.

4-Way vs 8-Way Joystick - Joystick'i kullanmaya başladığımda netleşen bir başka şey de, eski oyunların 8-yollu joystick kullanmaması gerektiğiydi. Buradaki durum pac-man'dir. Bu denetleyiciyi kurduğumdan beri, mekanik olarak 4 yolludan 8 yolluya geçebilen joystickler olduğunu buldum. Evet, bu listede var ve klasik atari oyunları oynamayı planlıyorsanız, değiştirilebilir olana geçin. Elbette, sahip olduğunuz joystick'e bağlı olarak kablolama ve programlamadaki değişiklikleri hesaba kattığınızdan emin olun. İşte klasik arcade kontrollerinin bazı tedarikçileri:

  • https://www.ultimarc.com/controls.html
  • https://groovygamegear.com/webstore/index.php?main…

Sağ ve Sol Taraf "Flipper" Düğmeleri - Sürüm 2, kabinin sol ve sağ tarafına kesinlikle birer düğme ekleyecektir. Olası bir kullanım, langırt paletleri için olacaktır.

Diğer Kontroller - Bir sonraki sürüme hareket topu ve/veya bir döndürücü gibi diğer yaygın kontrolleri eklemenin uygulanabilirliğine bakıyorum. EZ-Key fare koordinatlarını iletebildiğinden, bu çok zor olmamalıdır.

Yerleşik Programlama - Bir sonraki sürüm, kasayı açmadan yeni konfigürasyonlar ekleme yeteneğine sahip olmalıdır. Bunu sürüm 1'e eklemek istedim ama sahip olduğumdan daha fazla zaman ve kaynak gerektiriyordu.

Kablosuz Yarışma
Kablosuz Yarışma
Kablosuz Yarışma
Kablosuz Yarışma

Kablosuz Yarışmada İkincilik Ödülü

Önerilen: