![]() |
|
Programming Discussion Thread - Printable Version +- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org) +-- Forum: Offtopic (https://forums.dolphin-emu.org/Forum-offtopic) +--- Forum: Delfino Plaza (https://forums.dolphin-emu.org/Forum-delfino-plaza) +--- Thread: Programming Discussion Thread (/Thread-programming-discussion-thread) |
RE: Programming Discussion Thread - Ramoth - 04-08-2015 (04-08-2015, 02:02 PM)Shonumi Wrote: Nintendo never called it a PPU though. That term applies strictly to the NES. I think SNES calls it the S-PPU (3 guesses as to what the "S" stands for...) As for the GBA, most of the hardware logic for processing graphics is actually very close to the CPU (according to Nintendo's own block diagrams), as were other pieces of hardware controlling timers, DMAs, and sound (basically everything that needed to run off of the system clock rate). Final output is transferred to the LCD driver and onto your screen.According to GBATEK GBA has LCD Video Controller and DS has two 2D engines which are almost the same as GBA's LCD controller +3D geometry and rendering engines. DS only has specialized chips so calling them GPUs might be a stretch. RE: Programming Discussion Thread - ReZ - 04-13-2015 Nintendo DS Link full Support RE: Programming Discussion Thread - NKF98 - 04-13-2015 NO WAY! I would've never thought of that! We just do this code here, and compile some stuff there, yep! Totally possible! It's so simple, you're a genius ReZ!! RE: Programming Discussion Thread - Shonumi - 04-13-2015 Snark aside, what is it you're posting about ReZ? Asking about the feasibility of it? Looking for technical information? You aren't asking a question, and I don't see you replying to anyone specific, so I'm a little confused. Anyway, my GBA emu is coming alone. Sound is mostly finished, but the DMA digital channels need more work down the line. It's not the best audio quality. I think I might need my own mixer. SDL's mixer sound good enough for simple things like square waves and noise though. At any rate, GBE+ is a fully functional emulator that can enjoyably play games from start to finish. There are still a number of games with glaring issues (Mario + Luigi won't start a new game ) but for the most part it's on the right path.
RE: Programming Discussion Thread - KHRZ - 04-26-2015 A question about floating point operations across CPUs, as I know Dolphin managed to actually emulate the GC/Wii perfectly in this regard... I'm working on an online game that requires perfect synchronization across differents computers, I heard for Starcraft II they used "fixed point math" to make sure of this, however I also heard all CPUs following IEEE 754 should stay in sync... how did Dolphin handle this? Fixed point math, or does the GC/Wii follow IEEE 754? Can you expect all modern CPUs to follow IEEE 754? Also, the game is in Unity. RE: Programming Discussion Thread - JosJuice - 04-26-2015 (04-26-2015, 11:09 PM)KHRZ Wrote: Can you expect all modern CPUs to follow IEEE 754? Yes. (04-26-2015, 11:09 PM)KHRZ Wrote: how did Dolphin handle this? Fixed point math, or does the GC/Wii follow IEEE 754? If you're interested, Fiora has written about it here: https://www.alchemistowl.org/pocorgtfo/pocorgtfo06.pdf In short, it mostly follows IEEE 754 but has some exceptions, meaning that Dolphin has to add some extra code on top of the native CPU's floating point support in order to be sync-compatible. RE: Programming Discussion Thread - tueidj - 04-27-2015 IEEE754 is not an exact standard, you can have two machines that both comply with it and give different results. RE: Programming Discussion Thread - Ramoth - 05-11-2015 Shomuni is tile replacement in your GBA emulator already functional and what it can do, is it comparable to let's say hdnes? RE: Programming Discussion Thread - Shonumi - 05-11-2015 Tile replacement work hasn't even started for the GBA. I'm not going to focus on that until I reimplement GB tile replacement and finish what work I started for GBC tile replacement. Currently the plan is 1) to integrate code from the old project into the new one for GB/GBC emulation then 2) write a Qt GUI, 3) go back and work on tile replacement for GB/GBC games then 4) do a 0.1 release. GBA tile replacement is going to be much more complicated than either the GB/GBC. Given that computing hashes even on a simple game like Kirby's Dreamland could slowdown emulation on my 3.8GHz i5-2500K, GBA work is going to be a monster. I'm thinking of using multi-threading to alleviate some of the hashing stress across multiple cores. It'd be optional but beneficial, and there's no reason not to add it in this day and age. RE: Programming Discussion Thread - Shonumi - 05-21-2015 This thread needs more love :p Been very busy integrating and tweaking my old code from GBE into GBE+. I've abstracted the cores enough so that GB and GBA games can happily run in the same emulator. GB LCD emulation is getting a total rewrite, and so far it's going good. I actually have a number of games running just fine (without sprites or window emulation) but there's not much to show (it'd be the same stuff I posted here years ago). |