You are on page 1of 3

------------------------------------------------------Dualis A DS emulator /Mic, 2006

-------------------------------------------------------

About ----Dualis is a plugin-based DS emulator for x86/Win32 computers. It is written in x86 assembly and C++. This version mainly supports ARM9 binaries, which are loaded into main memory at 0x2004000 and excuted. The nds file format is also supported, in which case the ARM9 code is loaded into the address specified in the header. What is emulated ---------------ARM946E-S ARM7TDMI Video Most armv4 features, some armv5te features. Caches are currently disabled. Nothing. Both screens are emulated. The following modes are emulated (more or less): BG_MODE0 BG_MODE1 BG_MODE2 BG_MODE3 BG_MODE4 BG_MODE5 BG_MODE6 (main core) MODE_FB0..FB3 (main core) All color effects are emulated (except for alphablending on BGs using extended palettes). The 3D-hardware commands are mapped directly onto OpenGL. 3D hardware emulation is currently fairly limited and only works in OpenGL mode. Audio Input Nothing. All keys are emulated. Touchscreen input is faked using the IPC method implemented in NDSLib. DM1, DM2 and DM3 are emulated. All timers are emulated in both prescalar and count-up m Vblank, hblank, key, DMA and timer interrupts are emulat

DMA Timers ode. Interrupts

Keys ---D-Up D-Down D-Left D-Right B A Start Select L R Touchscreen Up arrow Down arrow Left arrow Right arrow Z X Return Space L R Use the mouse to move the stylus around. and the left button to "touch" the screen. repeat on. which in turn copies the data from that address (offset by the current scanline) to the virtual screen. If no such channel i s found.15) Makes dualis open up a windows console where it prints some information. Ctrl+a Screenshot main video core Screenshot sub video core Screenshot both video cores Start recording AVI Stop recording AVI Setup AVI recording Commandline parameters ----------------------theme <n> -wincon Select color theme setting (n = 0. etc). Ctrl+Shift+d toggles DMA transfers on/off.. Instead what happens in the emulator is the following: When display fifo mode is enabled in DISPCNT. as would be the case on a real DS. If such a channel is found the MMU will return t he DMA source address to the GPU. . There's no delay until the next frame starts. though not completely accurate. fixed dest.ed. nothing is done. . at the beginning of a hbla nk the GPU sends a request to the MMU checking for a properly set up DMA channel (word count=4. Ctrl+1 Ctrl+2 Ctrl+3 . Notes on main memory (display fifo) mode ---------------------------------------The display fifo is at this point not emulated accurately in respect to the hardware.