Showcase

BlitzBoy

Ein Gameboy Emulator in BlitzBasic

Genre: Anwendung
Windows


Abgegebene Stimmen: 7

Du musst eingeloggt sein, um eine Bewertung abgeben zu können.

Fortschritt: 80%
Version: 0.2
Entwickler: Jean

Beschreibung

Es handelt sich bei diesem Projekt um einen Gameboy Emulator, welcher komplett in BlitzBasic geschrieben wurde. Nur für die Soundausgabe wird eine externe Dll (Blitz Bass Studio) verwendet.

Die meisten Spiele laufen stabil, jedoch gibt es einzelne, bei denen der Sound etwas komisch tönt.

Der Quelltext zum Projekt liegt im Archiv. Ihr dürft damit machen, was ihr wollt. Sollte jemand einen gefundenen Fehler beheben, so wäre ich froh darüber, wenn man mich informieren würde.

Hier findet ihr legale Roms:
http://pdroms.de/files/gameboy/

Achtung
Ich habe bewusst darauf verzichtet, lizenziertes Material in meinem Emulator sowie auch in diesem Post zu verwenden. Im Internet gibt es viele Roms von lizenzierten Spielen zu finden, jedoch ist deren Verwendung
nicht legal.

Features

- vollständige Emulation der CPU
- Soundausgabe (alle 4 Channels)
- MBC1 Support

Downloads

BlitzBoy
(540,11 KB, 464 Downloads)


Kommentare

(Donnerstag, 30. August 2012 um 14:22 Uhr)

Von Tornado11

Als referenz kannst du z.B. Tetris nehmen (wenn dus hast). Ich habe channel 1,3,4 deaktiviert (2 hat die melodie). Da hört man die Fehler ziemlich gut (ein rauschen in bestimmten abständen und das die Töne zu niedrig sind).
(Mittwoch, 29. August 2012 um 22:35 Uhr)

Von Jean

Hmm und ich dachte ich hätte den Sound schon ziemlich gut hinbekommen. Kannst du mir sagen, welches Spiel du ausprobiert hast?
Ich verwende Funktionen wie BASS_ChannelSetAttributes und BASS_ChannelPause, weil ich dachte, sie würden einen kleineren Overhead produzieren, als wenn ich die ganze Bank im Ram kopiere.
Wegen Pokemon: Ist in Arbeit Smile
(Mittwoch, 29. August 2012 um 20:54 Uhr)

Von Tornado11

Pokemon funktioniert nicht weil es kein mbc3 support hat...
Grafik mässig funktioniert das meiste super! Aber am Sound musst du noch arbeiten...
Squarewave channel 1 (und damit wahrscheinlich auch 2) produzieren völlig falsche Töne
Du machst solche Dinge wie BASS_ChannelSetAttributes (sound_m1_channel, -1, sound_m1_volume_counter, 0) oder
BASS_ChannelPause(sound_m1_channel). Diese funktionen haben wahrscheinlich einen ziemlich grossen overhead.
Ich würde diese Dinge in Software machen, also z.b. wenn der channel disabled wird einfach ein sample wert von 0 rausgeben.
(Mittwoch, 29. August 2012 um 16:47 Uhr)

Von dont_know_to_use

Pokemon funktioniert nicht :/
Aber ansonsten eine super Arbeit!