|
Konu Başlığı: Donanım Emüle Etme? Gönderen: freeman üzerinde Haziran 17, 2020, 13:22:30 ÖS Başlıkta da belirttiğim gibi donanımları, güncel bilgisayarlarda, emüle etmek istiyorum. Bu konuda sizden yardım istiyorum.
Yardım istediğim konular daha çok şöyle 1. Bu konularla ilgili anahtar kelimeler(arama yapabilmek için) 2. Bu konuda önerebileceğiniz kitaplar ve makaleler, web siteleri, videolar 3. Ve bana yol gösterebilecek daha başka şeyler.. Gerçek donanımların yerini tabi ki hiçbir şey tutamaz ama gerçek donanımları da bulamıyoruz maalesef. Çoğumuz, bulsak bile kullanmaya kıyamıyoruz belki de öylece bakıyoruz. Bu gibi sebeplerden dolayı emülatörler önemli bir konu bana göre. ------------------------------------------------------------ Bazı önemli noktalar var: 1. CPU emüle etmek Yazılımsal olarak işlemci simüle etmek. qemu var bu alanda onu biliyorum. DosBox ve VirtualBox ise işlemci simüle etmiyor. Fiziki cihazdaki işlemciyi geriye dönük uyumluluk sayesinde kullanabiliyor. 2. Diğer donanımları emüle etmek Mesela C64 için kaset sürücüsü. Ve tabi başka donanımlar. ------------------------------------------------------------- Emülasyon/simülasyon normalde de ilgi duyduğum alanlar. Bu alanda daha çok şey öğrenmek istiyorum. Tabi ben de interneti deli gibi araştırıyorum. Sizlerin de fikirleri, yorumları, önerileri çok iyi olur. Bildiğiniz örnek projeleri falan yazın lütfen. Fiziki makine bulup uğraşamadığımdan bende kendime böyle bir uğraşı yapmak istiyorum. En azından bir şeyler öğreniriz. (Tek tek yazmaktansa şimdiden herkese çok teşekkür ederim.) Saygılarımla. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Theoden (CYON4D) üzerinde Haziran 17, 2020, 13:45:09 ÖS PC hardware emülatörü PCem'i tavsiye ederim.
Site: https://pcem-emulator.co.uk/ (https://pcem-emulator.co.uk/) Kaynak Kodu: https://bitbucket.org/pcem_emulator/pcem/src/default/ (https://bitbucket.org/pcem_emulator/pcem/src/default/) PCem ile NFS 3 Voodoo 2 testi: https://www.youtube.com/watch?v=9NWpZsJcxDk (https://www.youtube.com/watch?v=9NWpZsJcxDk) Sizin de belirttiğiniz gibi hardware seviyesinde bir emülasyon sağlıyor. Yani virtual değil de gerçek hardware olarak ele alınıyor parçalar. Açık kaynak kodlu olduğu için referans olarak da kullanılabilir. Kendim uzun zamandır kullanıyorum ve gerçekten çok başarılı bir hardware emülasyonu var. Her oyun ve ugulama da en iyi performansı verdiğini söyleyemem ama genel olarak çok keyifli bir emülatör. İçinde emüle etmesi çok zor olan Voodoo 2 gibi GPU'lar da var ve gerçekten çok başarılı. Hızlı bir sistem gerektiriyor ancak performansı çoğu zaman gayet yeterli. Son güncelleme ile eklenen parçalar: New machines added - Commodore SL386SX-25, ECS 386/32, Goldstar GDC-212M, Hyundai Super-286TR, IBM PS/1 Model 2133 (EMEA 451), Itautec Infoway Multimidia, Samsung SPC-4620P, Leading Edge Model M New graphics cards added - ATI EGA Wonder 800+, AVGA2, Cirrus Logic GD5428, IBM 1MB SVGA Adapter/A New sound card added - Aztech Sound Galaxy Pro 16 AB (Washington) New SCSI card added - IBM SCSI Adapter with Cache Support FPU emulation on pre-486 machines Emüle edilen parçaların listesi: 8088 AMI XT clone Atari PC3 Compaq Portable Plus DTK Clone XT (c)Anonymous Generic Turbo XT BIOS IBM PC IBM PCjr IBM XT Juko XT clone NCR PC4i Phoenix XT clone Schneider Euro PC Tandy 1000 Tandy 1000HX Thomson TO16 PC Toshiba T1000 VTech Laser Turbo XT Zenith Data SupersPort Xi8088 8086 Amstrad PC1512 Amstrad PC1640 Amstrad PC2086 Amstrad PC3086 Amstrad PPC512/640 Olivetti M24 Sinclair PC200/Amstrad PC20 Tandy 1000SL/2 Toshiba T1200 VTech Laser XT3 286 AMI 286 clone Award 286 clone Bull Micral 45 Commodore PC30-III Compaq Portable II Dell System 200 Epson PC AX Epson PC AX2e GW-286CT GEAR IBM AT IBM PS/1 Model 2011 IBM PS/2 Model 30-286 IBM PS/2 Model 50 IBM XT Model 286 Samsung SPC-4200P Samsung SPC-4216P Toshiba T3100e Tulip AT Compact 386SX Acermate 386SX/25N AMI 386SX clone Amstrad MegaPC DTK 386SX clone Epson PC AX3 IBM PS/1 Model 2121 IBM PS/2 Model 55SX KMX-C-02 Packard Bell Legend 300SX 386DX AMI 386DX clone Compaq Deskpro 386 IBM PS/2 Model 70 (type 3) IBM PS/2 Model 80 MR 386DX clone 486 AMI 486 clone AMI WinBIOS 486 clone Award SiS 496/497 Elonex PC-425X IBM PS/2 Model 70 (type 4) Packard Bell PB410A Socket 4/5/7 (Pentium) ASUS P/I-P55TVP4 ASUS P/I-P55T2P4 Award 430VX PCI Epox P55-VA Intel Advanced/EV (Endeavor) Intel Advanced/ZP (Zappa) Intel Premiere/PCI (Batman's Revenge) Packard Bell PB520R (Robin LC) Packard Bell PB570 (Hillary) Super Socket 7 (K6-2/III) FIC VA-503+ (1998) Graphics cards emulated : 3DFX Voodoo Graphics 3DFX Voodoo 2 ATI Graphics Pro Turbo (Mach64 GX) ATI Video Xpression (Mach64 VT2) ATI VGA Edge-16 (ATI-18800) ATI VGA Charger (ATI-28800) CGA Cirrus Logic CL-GD5429 Cirrus Logic CL-GD5430 Cirrus Logic CL-GD5434 Compaq CGA Diamond Stealth 32 (Tseng ET4000/w32p) Diamond Stealth 3D 2000 (S3 ViRGE/325) Hercules Hercules InColor IBM EGA IBM VGA MDA MDSI Genius Number Nine 9FX (S3 Trio64) OAK OTI-037 OAK OTI-067 Olivetti GO481 (Paradise PVGA1A) Paradise Bahamas 64 (S3 Vision864) Phoenix S3 Trio32 Phoenix S3 Trio64 Plantronics ColorPlus S3 ViRGE/DX Sigma Color 400 Trident TVGA8900D Trident TGUI9400CXi Trident TGUI9440 Trigem Korean VGA (Tseng ET4000AX) Tseng ET4000AX Wsye 700 Sound cards emulated : AdLib AdLib Gold Ensoniq AudioPCI GameBlaster Gravis UltraSound Sound Blaster v1.0 Sound Blaster v1.5 Sound Blaster MCV Sound Blaster v2.0 Sound Blaster Pro v1 Sound Blaster Pro v2 Sound Blaster Pro MCV Sound Blaster 16 Sound Blaster AWE32 Sound Blaster PCI128 Windows Sound System Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: wizofwor üzerinde Haziran 17, 2020, 14:36:39 ÖS 6502 özelinde:
Basit denemeler için tarayıcıda çalışan Easy 6502 by skilddrick (http://skilldrick.github.io/easy6502/) çok iyidir. (Denemek isterseniz $0200 to $05ff arasındaki bellek adresleri display simülatöre mapli.) Visual 6502 (http://www.visual6502.org/) işlemcinin çalışmasını görsel olarak izleyebileceğiniz bir simülatör. 6502 Macro Assembler, Simulator, and Debugger (http://exifpro.com/utils.html) 6502 kodunu derleyip debug yapabileceğiniz çok güzel bir araç. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Blasterreal üzerinde Haziran 17, 2020, 14:41:34 ÖS PC hardware emülatörü PCem'i şiddetle tavsiye ederim. Site: https://pcem-emulator.co.uk (https://pcem-emulator.co.uk/) Amithlon için denediniz mi hiç ? Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Theoden (CYON4D) üzerinde Haziran 17, 2020, 14:49:51 ÖS Amithlon için denediniz mi hiç ? Şimdilik sadece intel pentium CPU'larını ve Voodoo 2 GPU'larını deneme fırsatım oldu. Windows 98 ile çok güzel sonuçlar aldım. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Blasterreal üzerinde Haziran 17, 2020, 15:02:45 ÖS Amithlon için denediniz mi hiç ? Şimdilik sadece intel pentium CPU'larını ve Voodoo 2 GPU'larını deneme fırsatım oldu. Windows 98 ile çok güzel sonuçlar aldım. Amithlon kesin çalışır diye düşünüyorum, biraz üşengeçlik yapıp araştırmadan sorayım rom dosyaları mevcutmu elinizde upload etme şansıznız varmıdır ? Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Theoden (CYON4D) üzerinde Haziran 17, 2020, 15:06:07 ÖS Amithlon kesin çalışır diye düşünüyorum, biraz üşengeçlik yapıp araştırmadan sorayım rom dosyaları mevcutmu elinizde upload etme şansıznız varmıdır ? Bütün ROM'ları şu linkten indirmiştim diye hatırlıyorum: https://github.com/BaRRaKudaRain/PCem-ROMs Eve gidince tekrardan bakayım. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: evreno üzerinde Haziran 17, 2020, 15:13:49 ÖS Kaynak arıyorsan bu iş için en iyi kaynaklardan biri mame aslında
içerisinde yüzlerce hardware in emulasyonu var incelemek için iyi bir başlangıç noktası Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: blackturk üzerinde Haziran 17, 2020, 15:35:43 ÖS vice emulator açık kaynak kodlu, inceleyebilirsiniz.Bir çok kez vice kodunu inceledim.tavsiyem olur.keza çoğu , emulatörün açık kaynak kodlu yayınlanıyor.araştırsanız bulabilirsiniz. yok ben ,emulatör nedir nasıl çalışır , bana tüyo verin derseniz. bizim forumda birisi uğraşıyordu. tam hatırlamıyorum ama bir çalışması vardı. belki hatırlayan vardır.
Psx , uae , vice , sega emulatorleri , msx , zx spectrum ,rahatlıkla source code olarak bulabilirisniz. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: witchdoktor üzerinde Haziran 17, 2020, 15:54:11 ÖS MAME ve MESS de açık kaynak kodlu emülatörler...
https://www.wikipedia.org/wiki/Multi_Emulator_Super_System (https://www.wikipedia.org/wiki/Multi_Emulator_Super_System) Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: freeman üzerinde Haziran 17, 2020, 16:37:34 ÖS Herkese tek tek teşekkür ediyorum. Verdiğiniz tüm bağlantıları inceleyeceğim. Bu konuya yazarım ara ara.
Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Levent (Lvnt) üzerinde Haziran 17, 2020, 18:17:19 ÖS Ben c gibi bir programlama diliyle yazılmış bir emülatör üzerinde çalışmak istiyorsunuz diye anlıyorum. Emülatörü compile edip ardından üzerinde birşeyler çalıştırmak şeklınde. Belki üzerinde bir iki değişiklik ve tekrar compile, tekrar çalıştır şeklinde.
Emülatörü istediğiniz programlama dilinde yazıyor ya da çalışıyor olabilirsiniz ancak ilgilendiğiniz işlemci için assembly *VE* makine dili kodlama yapabiliyor olmanız gerekiyor. Sonuçta emüle etmek dediğimiz şey o işlemcinin makine dilini okutup yorumlayacak bir program yazmak. Bu ayrıntının farkına varmanız önemli. Bu yüzden de x86 bile başlangiç seviyesi için fazla karmaşık bir işlemci ne yazık ki. IBM uyumlular için fazladan bir bios dosyası da olması lazım, emülatör ilk açılışta onu çalıştıracak. Baştan söylemiş olayım, orta yerinde bırakacaksanız karmaşık işlemcilerden uzak durun, emeğiniz boşa gitmesin, şevkiniz kırılmasın. 6502 gibi basit bir 8bit işlemcinin mümkün olduğunca basit bir emülatörünü github'da aratabilirsiniz mesela. x86 hakkında uyarımı yaptıktan sonra... 8086tiny: Çok küçük, üzerinde çalışılabilir, bios asm source de içinde. Yanlız uyarmış olayım yazarı bios'unun içine emülatör kodlarının bir kısmını taşımış. Sebebi emülatörü daha da küçük yapmak. Kodları yanlış hatırlamıyorsam macro doluydu. Anlaşılabilirlik için iyi olabilir, compile edip denemek için biraz sıkıntılı. Ben tüm macro'ların karşılıklarını elle yerlerine yazmıştım, bu asla hata yapılmaması gereken bir aşama, ve doğrusu hata yapmış da olabilirim, ama benim versiyon hala alleycat'i çalıştırıyor. Velhasıl kendi açımdan bu emülatör için üzerinde çalışmak için en uygun 8086 emülatörü diyebilirim. Haliyle x86 asm *ve* x86 makine dili bilmeniz gerekiyor. Çok da kafaya takmayın, switch() içini çalışırken "hmm öyle miymiş" şeklinde en dipten anlamaya başlıyorsunuz. Yine de x86 asm ve makine dili araştırmaya hazır olun: https://github.com/adriancable/8086tiny (https://github.com/adriancable/8086tiny) Başlangıç için qemu dosbox vb *fazlasıyla* zor olabilir. Bunu da dedikten sonra :) Yukarıda tavsiye edilmişti, ekleme yapmış olayım: Pcem fork'u, birisi bir noktada pcem'i alıp başka şekilde geliştirmeye başlamış: https://github.com/86Box/86Box (https://github.com/86Box/86Box) Mame/mess için umutluyum. Eskiden beri çok iyi bir iş çıkardıklarını düşünmüşümdür hep. Ancak hiç öğrenme amaçlı olarak kodlarını kurcalamadım, başa çıkılabilir mi hiç bilmiyorum. Üzerinde çalışmak isterseniz eski en stabil bir versiyon seçin ve o versiyon üzerinde çalışın derim. Amaç emülatör öğrenmek sonuçta, son versiyona katkı değil. 0.37b15'di galiba stabil bir versiyon vardı. O versiyon için archive.org'da rom'lar var. O versiyon üzerinden gidebilirsiniz. Compile'de sorun olursa sırf onun üzerinde çalışmak için 2000 yılı civarı bir linux kurulumu yapın, onun üzerinde compile edersiniz. Slackware 8.1 (gcc-2.95.3 compiler) tavsiye edebilirim. gcc-3 serisinde sorunlar yaşamıştım, aklınızda olsun. Ve son olarak Darek ve onun sırları, "no execute", okumaya sayfanın en altından başlayın, biraz ileri düzeydir uyarmış olayım. En üstteki son 3 yazı emülatör hakkında değil, kendisinin kişisel görüşlerine asla katılmıyorum, tasvip etmiyorum. Ama emülatör konusunda yazdıkları önemli, bilinmesi gereken şeyler bence. http://emulators.com/nx_toc.htm (http://emulators.com/nx_toc.htm) Kolay gelsin Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: freeman üzerinde Haziran 17, 2020, 18:50:39 ÖS @Levent;
Hocam C dili ve assembly biliyorum. Tabi bilmek demeyelim de işimi görebiliyorum. Ama bu yine de her istediğimi yazacağım anlamına gelmez. Uçsuz bucaksız bir dünya... Makro dediğinize göre sanırım MASM assembler kullandınız. Elle yazmanıza gerek yoktu makroları. Kodu derlemeden sadece önişlemden geçirip çıktısını veren bir komutu olması lazımdı diye hatırlıyorum. Yani makroları falan o gerekli yerlere yerleştirip sonucu veriyor. Zaten aktif olarak Linux kullanıcısıyım. Bilgisayarımda Windows yüklü bile değil. :) Slackware 'e gerek yok, Ubuntu üzerinde de her türlü sorunu çözebilirim(sanırım). x86 konusunda da haklısınız çok karmaşık günümüz işlemcileri. 6502, 8086 gibi işlemciler için tarayıcı tabanlı emülatörler var. Onları kurcalıyorum. Dökümanlarını okumaya çalışıyorum da tabi çok zaman alıyor. Şu an en çok ihityacım olan şey; 8086 emülatörü ve bu emülatörde C kodlarını assembly karşılıklkarına çevirmek(gcc -S komutu gibi). Yorumunuz için teşekkür ederim. Bu konuyu favorilere ekledim. Güzel bilgiler, tavsiyeler geldi. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Blasterreal üzerinde Haziran 17, 2020, 20:23:31 ÖS Arkadaşlar konu ile alakasız ancak amithlon çalıştımayı başardım, pcem ile.
Ancak çok yavaş çalışıyor bildiğimiz pentium mmx233 mhz hızında :) Umarım pentium 4 cpu ilerleyen dönemde eklenir oldukça hızlanacaktır. Qemu ile ve proxmox ile'de amithlon'u çalıştırmıştım @Theoden (Arethrid) uygulama bilgisi için teşekkürler, bios dosyalarını önceki verdiğin linketen indirdim. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Levent (Lvnt) üzerinde Haziran 17, 2020, 20:48:40 ÖS @Levent; 8086tiny'in orjinal yazarı ben değilim. Yazar emulatörü c ile yazmış ama bir sürü makro kullanmış. #define M xyz şeklindeHocam C dili ve assembly biliyorum. Tabi bilmek demeyelim de işimi görebiliyorum. Ama bu yine de her istediğimi yazacağım anlamına gelmez. Uçsuz bucaksız bir dünya... Makro dediğinize göre sanırım MASM assembler kullandınız. Elle yazmanıza gerek yoktu makroları. Kodu derlemeden sadece önişlemden geçirip çıktısını veren bir komutu olması lazımdı diye hatırlıyorum. Yani makroları falan o gerekli yerlere yerleştirip sonucu veriyor. Zaten aktif olarak Linux kullanıcısıyım. Bilgisayarımda Windows yüklü bile değil. :) Slackware 'e gerek yok, Ubuntu üzerinde de her türlü sorunu çözebilirim(sanırım). x86 konusunda da haklısınız çok karmaşık günümüz işlemcileri. 6502, 8086 gibi işlemciler için tarayıcı tabanlı emülatörler var. Onları kurcalıyorum. Dökümanlarını okumaya çalışıyorum da tabi çok zaman alıyor. Şu an en çok ihityacım olan şey; 8086 emülatörü ve bu emülatörde C kodlarını assembly karşılıklkarına çevirmek(gcc -S komutu gibi). Yorumunuz için teşekkür ederim. Bu konuyu favorilere ekledim. Güzel bilgiler, tavsiyeler geldi. Ben emülatörün üzerinde çalışırken bu makro yani #define'lerin işimi zorlaştırdığını düşündüğüm için bunlarsız çalışır hale getirdim, kişisel bir tercih, bu şekilde ben daha rahat çalıştım. Böyle birşey yaparsanız zor oldu onu anlatmaya çalıştım. Siz bildiğiniz gibi yaparsınız. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Theoden (CYON4D) üzerinde Haziran 17, 2020, 22:38:49 ÖS @Theoden (Arethrid) uygulama bilgisi için teşekkürler, bios dosyalarını önceki verdiğin linketen indirdim. Rica ederim. Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: amenofis üzerinde Haziran 20, 2020, 00:02:11 ÖÖ Öğrenmek istediğin şeyleri sorabilirsin. Oyun konsolu emulasyonu konusunda çalışmalarım oldu.
Konu Başlığı: Ynt: Donanım Emüle Etme? Gönderen: Oğuzhan üzerinde Temmuz 03, 2020, 10:43:46 ÖÖ Son versiyon 16
romların büyük çoğunluğu 15 için. Çalışıyor mu v16 yazılım v15 romlarıyla? |