StapleButter
a99ebf38db
prevent crash if mic init fails
2018-12-16 14:18:59 +01:00
StapleButter
3f26fbddc0
HAW HAW HAW HAW
2018-12-16 01:13:14 +01:00
StapleButter
4a47bd6d53
make it even saferer
2018-12-16 00:39:14 +01:00
StapleButter
502d8c3fa0
avoid potential crash with EmuDirectory if we somehow got no argv or an empty path
2018-12-16 00:38:10 +01:00
StapleButter
a34d456fcc
GX: timing for command 0x50 is more like 325 cycles on average on hardware. (measured 319/325/331)
...
fixes #297
2018-12-15 13:33:44 +01:00
StapleButter
12c35093aa
set GXSTAT busy flag immediately when writing a command to the GXFIFO.
...
there was a slim chance that a game could send a couple commands and read GXSTAT.busy as zero immediately after. the new timings made that happen in NSMB (not in the USA ROM, oddly), such that the game was reading the clip matrix while matrix commands were running, and getting the first few values wrong.
fixes #295 and probably others in the same vein.
2018-12-15 05:00:25 +01:00
StapleButter
7fb1c0518c
Merge pull request #285 from abcdjdj/limit_fps
...
Add option to limit framerate from UI
2018-12-15 00:38:35 +01:00
StapleButter
d30043bc85
Merge pull request #230 from dogtopus/pcap-libnames-linux
...
Add linux libpcap names to the pcap library list
2018-12-15 00:30:44 +01:00
StapleButter
56c2160855
attempting to fix some potential input dialog crashes
2018-12-15 00:22:28 +01:00
StapleButter
e6c03619a1
libui/gtk: make uiWindowSetFocus() actually work
2018-12-14 22:57:06 +01:00
StapleButter
2077642a92
libui/GTK: remember directory in which the latest loaded ROM was, point file picker to it. behavior under Windows will likely stay unchanged as the Windows file picker already does that.
2018-12-14 22:03:34 +01:00
StapleButter
10ebae42db
avoid crash when the mic WAV couldn't be loaded
2018-12-14 14:20:59 +01:00
StapleButter
46bc2dba33
fix possible overflow in wav resampling. now it doesn't shit itself when loading large wavs.
2018-12-14 05:52:36 +01:00
StapleButter
c0c115a0ee
fix some wav/mic bugs
2018-12-14 05:48:50 +01:00
StapleButter
c7433ca664
finalize microphone code (hooked to all settings etc)
...
also add volume setting
2018-12-14 05:15:57 +01:00
StapleButter
8372edac0c
add file picker thing
...
I guess this part is done
2018-12-14 04:28:57 +01:00
StapleButter
5efb162302
actually save shit
2018-12-14 04:25:39 +01:00
StapleButter
fd54abd900
add dialog for audio settings, flesh it out
...
not functional yet tho
2018-12-14 04:09:51 +01:00
StapleButter
a64e59bf99
hook lid close/open to the actual hotkey system
2018-12-14 03:45:27 +01:00
StapleButter
ff1e21733d
add hotkey config values.
...
duplicate DlgInputConfig so that it can also do hotkey config.
also prevent from opening those config dialogs a billion times.
2018-12-14 03:32:40 +01:00
StapleButter
cb1e6ce750
proof-of-concept code for closing/opening lid.
2018-12-14 02:36:57 +01:00
StapleButter
e829c2e4a1
libui/windows: cache ideal size for uiButton.
...
input dialog isn't abysmally slow anymore.
2018-12-14 01:15:18 +01:00
StapleButter
dc2b1219cd
b0rp
2018-12-14 00:35:00 +01:00
StapleButter
a4eaf7dc19
SPU:
...
* support channel repeat mode 3, behaves same as mode 1 (loops)
* always clear channel buffers, so if channels 0-7 use format 3, they don't output old data over and over again (fixes #281 )
2018-12-14 00:14:06 +01:00
StapleButter
68d5e3c782
3D: in Z-buffering mode, margin for 'equal' depth test mode is +-0x200, not +-0xFF
...
fixes #274
2018-12-13 22:46:12 +01:00
StapleButter
32392cc8e2
2D: blending cases that bypass the BLDCNT first-target check (semitransp sprite, 3D layer) also bypass the window 'color effect enable' check.
...
fixes #299
2018-12-13 19:21:03 +01:00
StapleButter
eb1289c2fa
release audio devices properly
2018-12-13 18:51:01 +01:00
StapleButter
aa8c84f040
* correct romlist.bin (Club Penguin Herbert's Revenge EUR uses 4K EEPROM, not 64K)
...
* support 32bit reads to POWCNT1 (and also POSTFLG)
fixes #300
(insert sparta meme)
2018-12-13 15:03:06 +01:00
StapleButter
ef79cc06f3
proof-of-concept code for feeding a WAV to microphone input.
...
this eventually needs a proper UI.
2018-12-13 14:34:15 +01:00
StapleButter
4d71da04ec
start work on NAND shito.
2018-12-12 20:59:08 +01:00
StapleButter
548432c364
add code to support GBA slot reads for later
2018-12-12 19:43:29 +01:00
StapleButter
2c8f674318
add ROM #3159 to romlist.bin
2018-12-12 17:23:54 +01:00
StapleButter
758bed93bc
preliminary microphone code. requires an actual microphone. resulting audio is farty and blargy as fuck.
2018-12-12 16:33:40 +01:00
StapleButter
24d6bd2786
send console output to parent process's console.
...
this way Windows release builds can get console output if run from cmd.exe, just like under Linux
2018-12-12 15:18:43 +01:00
StapleButter
affe1c084f
can't hurt to fix that, either, I guess
2018-12-12 03:18:14 +01:00
StapleButter
a8f2267a18
zarg
2018-12-12 03:09:48 +01:00
StapleButter
e7a4fe11ed
add nocashPrint type shit
2018-12-12 02:48:37 +01:00
StapleButter
d92c7e79df
re-blarg. linux doesn't take \ you idiot
2018-12-11 22:17:49 +01:00
StapleButter
1817c15cb0
blarg
2018-12-11 22:14:15 +01:00
StapleButter
e84d66dc64
use melon_fopen_local() for romlist.bin.
...
bump version number up.
2018-12-11 21:52:21 +01:00
StapleButter
3101bd595f
add missing shit to savestates. bump the version up.
2018-12-11 21:50:28 +01:00
StapleButter
40f3f91368
move config-file seeking code to its own thing.
...
look also into the same directory as melonDS. make it the preferred place for storing melonDS.ini.
rewrite WinMain() wrapper.
2018-12-11 21:34:05 +01:00
StapleButter
9a0bf912d9
(finally) axe trainwreck savetype-autodetect code.
...
pull that from ROM database.
for now, assume EEPROM 64k if not found, or null for homebrew.
2018-12-11 20:39:07 +01:00
StapleButter
f03828f7b9
add code that searches into romlist.bin
2018-12-11 19:47:03 +01:00
StapleButter
e2f3c29360
blarg.
...
also, calculate ROM CRC.
2018-12-11 19:16:19 +01:00
StapleButter
0579a1cd2e
add CRC32 shit
2018-12-11 19:10:57 +01:00
StapleButter
4aafdee14d
more sensible cache timings
...
(still a big fat hack)
2018-12-11 17:59:52 +01:00
StapleButter
e4c6ac55d2
Mario&Sonic doesn't like it when its code is running too fast; dual-screen-3D shits itself big time
2018-12-11 17:28:59 +01:00
StapleButter
91b2f64596
add back faster prefetch for ARM9
2018-12-11 16:41:18 +01:00
StapleButter
beb092f93e
change where audio/joystick are inited, attempting to fix potential COM initialize issues
2018-12-11 16:24:55 +01:00
StapleButter
3dd8c7b152
finish the work on the main loop. finally fix all cases of desync I could find. also add #ifdef'd debug code to check for desyncs.
2018-12-11 15:56:34 +01:00
StapleButter
78d384a754
temp commit
...
almost done killing ARM9/ARM7 desync, f
2018-12-11 03:08:46 +01:00
StapleButter
aba4610d45
fix bugs
...
still kinda shitty tho. like, we lost enough timer accuracy to have visible effects (aging cart tests that fail, FMVs that play too slow, etc)
2018-12-09 01:46:10 +01:00
StapleButter
b569c03884
make it fasterer
2018-12-09 01:26:51 +01:00
StapleButter
29bca33bc6
take it somewhere.
...
still need to speed it up a tad.
2018-12-09 01:17:05 +01:00
StapleButter
c6fb152d80
start devolving things.
...
also implement proper DMA timings.
will not build. don't try.
2018-12-08 22:33:41 +01:00
StapleButter
86dae1a25c
make this other branch where we're going to actually make it usable
...
but it'll be a gross hack
2018-12-08 20:27:00 +01:00
StapleButter
0b1c2f9691
begin PU work
2018-12-04 18:32:19 +01:00
StapleButter
9ebcb5f143
axe CP15.h, we don't need it anymore.
2018-12-04 17:55:03 +01:00
StapleButter
172fb4876a
begin work on general timing renovation. way shitty because it behaves as if caches were off, so everything will be slow as shit.
2018-12-04 17:54:10 +01:00
StapleButter
808bda9171
do not require dpad mappings for joystick axis to work
2018-12-02 15:11:56 +01:00
StapleButter
5b20f40fad
oopsies
2018-11-28 02:45:20 +01:00
StapleButter
b1973014d3
add some missing shit to savestates
2018-11-25 22:40:08 +01:00
StapleButter
4b8cea3b38
revise windows to be even closer to hardware.
...
apparently hardware only ever updates its 'inside/outside window' status when reaching the coordinates. which becomes apparent if you, like, try to invert a window midframe.
2018-11-25 19:13:23 +01:00
StapleButter
2035784f9f
on the DS, windows with backward coordinates end up inside-out. revise window code accordingly. fixes #287 .
2018-11-25 18:36:47 +01:00
StapleButter
5f1f2a7b4a
fix regression in Marvel Nemesis. keep GX cycle counter from drifting absurdly far in the negatives, and fix a few other issues.
2018-11-25 17:39:43 +01:00
StapleButter
3f8befaf4e
add support for forced-blank. fixing spurious colors during screen transitions in Picross 3D.
...
I thought I had already fixed that, but it was stuck in the long-dead jit branch, so, here it is, back from the dead.
2018-11-24 21:10:26 +01:00
StapleButter
46d5a31275
well yeah that's what I thought
...
GXFIFO stalls don't stall the ARM7
2018-11-24 05:23:35 +01:00
StapleButter
391c8d43b0
drain GX pipelines when there's nothing else running. fixes some weird bugs, apparently.
2018-11-24 04:27:27 +01:00
StapleButter
7b48ce5b75
* fix possible issues with GXFIFO stalling
...
* rework GPU timings, now almost same as hardware. display lists generally execute faster. not finished. not bad for a start tho.
* Rayman RR2 is still getting sound streaming issues. I don't think GXFIFO stalls are supposed to halt the ARM7. that doesn't make sense and would mess badly with sound since it's also using the ARM7 bus.
2018-11-24 02:29:25 +01:00
StapleButter
a9e7f8bc5b
add proper support for GXFIFO stalls.
...
bad games that blast the GXFIFO and overflow it:
* Super Mario 64 DS
* Rayman RR2
latter seems to get its music streaming crapoed.
2018-11-23 22:21:41 +01:00
Madhav Kanbur
78c767b693
Add option to limit framerate from UI
...
Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>
2018-11-21 11:11:02 +05:30
StapleButter
27e1ca4103
beginning timing renovation.
...
smarter Reschedule().
gotta start somewhere, I guess.
2018-11-09 14:10:06 +01:00
StapleButter
7ba32ea076
make the ARM clock shift configurable. nothing fancy there, just paving the way for DSi support later.
2018-11-07 18:38:54 +01:00
StapleButter
fa4fa164cb
* store all 32 matrix stack entries in savestates instead of 31.
...
* bump savestate version up. will break compatibility, but the alternative would be guessing the missing matrix entries somehow, so blarg.
* avoid relocating the savefile if loading a savestate fails.
2018-11-05 16:14:48 +01:00
StapleButter
9b32418367
3D: fix0r matrix stack handling when stack pointers overflow (it fucking wraps around).
...
fixes #231 and probably others of the same vein.
2018-11-05 16:05:16 +01:00
StapleButter
b4165cc0a9
3D: keep the rasterizer from accidentally going out of bounds when given very flat X-major edge slopes.
...
this, by a fucking shitshow of butterfly effect, ends up fixing #234 . technically, the rasterizer was going out of bounds, which, under certain circumstances, caused interpolation to shit itself and generate Z values that were out of range (but still ended up in the zbuffer). sometimes those values ended up negative, which caused these glitches when polygons had to be drawn over those.
about fucking time.
2018-11-04 23:21:58 +01:00
StapleButter
fb284f33ad
Merge branch 'master' of https://github.com/StapleButter/melonDS
2018-10-27 14:44:52 +02:00
StapleButter
658856b256
fix implementation of CoTaskMemRealloc, as it can decide to move the buffer elsewhere, we have to account for that
2018-10-27 14:44:39 +02:00
StapleButter
307c26de93
Merge pull request #248 from Dirbaio/master
...
Two fixes
2018-10-27 14:16:46 +02:00
StapleButter
a4339daade
oops! don't hardcode a 9
2018-10-27 13:51:40 +02:00
StapleButter
f4890137c0
fix configfile loading under Windows, for when it checks AppData
...
by making it actually, you know, build the complete file path
hopefully that fixes that crash bug, but I couldn't reproduce it after touching the code some. heisenbugs are lots of fun
2018-10-27 13:50:29 +02:00
StapleButter
d4d4965b2f
remove trainwrecky code that caused issues now.
2018-10-26 22:17:27 +02:00
StapleButter
c8d63f2be7
fuck that shit.
...
I fucking give up.
Windows actually doesn't want to cooperate either, and is being utter shit.
so, I'm going to do it the desmume way.
2018-10-26 20:10:25 +02:00
StapleButter
eb67ac9a1b
finally come up with a (crummy) solution for those fucking shitty submenus
2018-10-26 20:56:59 +02:00
StapleButter
cbe63f8fd5
until we actually get somewhere with the menu crap... fix potential crashes when exiting.
2018-10-26 18:39:41 +02:00
StapleButter
c5670a22a5
fix GTK menus asploding upon exit. hopefully. fuck this code
2018-10-26 16:29:46 +02:00
StapleButter
65bba8ff81
call it a release???
2018-10-24 00:38:35 +02:00
StapleButter
6e1209dd32
misc things
2018-10-24 00:32:31 +02:00
StapleButter
8b4ba2d8b9
separate SRAM setting coded, I guess
2018-10-24 00:24:36 +02:00
StapleButter
1edf2aed3b
* code function for relocating the savefile.
...
* don't bitch at the user when trying to load a savestate file that doesn't exist.
* grey out 'load state' items if there is no file.
2018-10-23 22:54:09 +02:00
StapleButter
f60ac42466
pass savefile name to NDS::LoadROM() instead of having the core generate it.
2018-10-23 21:52:41 +02:00
StapleButter
a4a9bca5f0
fix more shit
2018-10-23 20:40:57 +02:00
StapleButter
98076f2334
hopefully fix all 3D-related crashes when loading savestates
2018-10-23 20:20:38 +02:00
StapleButter
c9a7a0d744
* start coding UI shito for savestates
...
* change default mapping for L button to the key right next to Shift because we're gonna derp around with it
* still some shito to fix, but hang on, we're getting there
2018-10-23 19:57:01 +02:00
StapleButter
4075dad0a8
3D: attempt at fixing that shadow/AA interaction bug in the MKDS character select screen
2018-10-22 01:36:04 +02:00
StapleButter
d191af8690
rewrite how structures are stored to savestates (store individual fields, to avoid compatibility issues)
...
also fixes stability issues when 3D is involved. turns out we were storing raw pointers to vertices. figures
more crapo code to get around that, but atleast it works without asploding now.
2018-10-21 03:16:41 +02:00
StapleButter
cbcecc8cdb
don't store BIOS in savestates. no point doing so.
2018-10-19 01:05:19 +02:00
StapleButter
467461fb3d
properly initialize shit before attempting to read from the file
...
fixes load failure when attaching a debugger
2018-10-18 05:14:15 +02:00
StapleButter
b5c39680a5
hax, finally making savestates usable
...
F1 to save, F2 to load. filename hardcoded for now.
shits itself:
* when the 3D engine is used
* when a debugger is used (heh)
2018-10-18 04:00:16 +02:00
StapleButter
20862b7daf
aight, wifi done
2018-10-18 03:22:53 +02:00
StapleButter
f51e1ec805
I guess that might have malfunctioned
2018-10-18 03:10:17 +02:00
StapleButter
86f5155f72
more procrastinating before actually starting savestatez0ring wifi.
...
I need to pee
2018-10-18 03:09:03 +02:00
StapleButter
3a54b9178b
RTC done. misc shito.
2018-10-18 03:04:39 +02:00
StapleButter
cbe5780837
SPI done
2018-10-18 02:54:48 +02:00
StapleButter
7bf62918cd
SPU done
2018-10-18 02:45:38 +02:00
StapleButter
a2cc7087f7
GPU done
2018-10-18 02:31:01 +02:00
StapleButter
148f4032f1
fix code that would have fucking asploded
2018-10-18 01:38:33 +02:00
StapleButter
f4cf54829e
a bit moar of it
...
brick by brick, file by file, we will destroy capitalism
and make savestates work, maybe
2018-10-18 00:54:21 +02:00
StapleButter
de91eabf71
savestate shito: fix compile errors.
...
still far from being finished, so avoid using unless you want to spawn blackholes or some pretty bad shit.
2018-10-18 00:27:55 +02:00
StapleButter
7cbcc6c230
zlarg
2018-09-15 03:41:09 +02:00
StapleButter
60f24a7432
moar progress on it
2018-09-15 03:29:36 +02:00
StapleButter
0bfd019dc0
start implementing actual shito
...
(also looks like the test bench in libui_sdl/main.cpp snuck in with the copyright update. shit)
2018-09-15 02:47:34 +02:00
StapleButter
fea7955675
fixor copyright years.
2018-09-15 02:32:13 +02:00
StapleButter
1d19145983
moar working now.
2018-09-15 02:14:08 +02:00
StapleButter
aa59ee257e
base for savestate crapo.
...
I'm not quite settled yet, so before I can get into the real meat, I figured I'd address some 'popular request' items.
2018-09-15 02:04:21 +02:00
Dario Nieuwenhuis
d721e098eb
Make "unknown IO" messages consistent, all including value and PC.
2018-05-24 01:09:40 +02:00
Dario Nieuwenhuis
cb79a5dc14
Make Main RAM size configurable in a single place.
2018-05-24 01:09:23 +02:00
StapleButter
20050fb668
quick attempt at supercard emulation. really ugly
2018-04-27 20:00:53 +02:00
StapleButter
81e98b5e12
direct boot: init cart ID from NDSCart::CartID instead of hardcoding it
2018-04-27 19:26:46 +02:00
StapleButter
f0bc364210
init AUXSPICNT to 0x8000.
...
(guess sloppy DLDI drivers expect that)
2018-04-27 00:20:18 +02:00
StapleButter
39bd94f551
start work on DLDI, with some (very haxy) patching so it can do interesting things
2018-04-27 00:17:05 +02:00
StapleButter
aa3fc8be68
fix build under Windows
...
(fuck that shit)
2018-04-24 23:16:26 +02:00
Dario Nieuwenhuis
a2c95f2dc3
Add 32bit IPCSYNC reads and writes.
2018-04-24 22:31:52 +02:00
dogtopus
41b40cd4fa
Add linux libpcap names to the pcap library list
2018-02-22 10:39:02 -04:00
StapleButter
aab0030137
Merge pull request #224 from hcorion/alternate-loading
...
Load bios, firmware and melonDS.ini from exe, ~/.config/melonds or AppData
2018-02-19 13:08:34 +01:00
StapleButter
12e33ae872
Merge pull request #222 from dogtopus/master
...
Fix build on linux, enable build directory support
2018-02-19 12:50:54 +01:00
Zion Nimchuk
52df6be5f8
Load bios, firmware and melonDS.ini from executable or ~/.config/melonds or AppData
2018-01-11 14:38:57 -08:00
StapleButter
981661a36d
wifi: implement increment for txheader[4]
2018-01-04 00:10:35 +01:00
StapleButter
d50e7e4686
fix SMULWx/SMLAWx. fixes #78 , finally
2017-12-29 03:17:32 +01:00
dogtopus
549bcf6d71
Fix build on linux, enable build directory support
...
Specifically:
- Include stddef.h for missing ptrdiff_t
- Define PCAP_OPENFLAG_PROMISCUOUS if not using WinPcap because it seems to be
a WinPcap extension
- Make use of CMAKE_CURRENT_{SOURCE,BINARY}_DIR to enable building under a
directory other than root of the project
2017-12-22 12:29:34 -04:00
StapleButter
9336e15197
avoid crashing when receiving a packet that is too large
2017-12-19 01:00:55 +01:00
StapleButter
5fe30d306f
wifi:
...
* fix BSSID/MAC check when receiving packets
* safeguard AP auth/deauth so local MP doesn't trigger it
2017-12-19 00:33:09 +01:00
StapleButter
141e2a7ab0
clear chipselect when turning SPI off. fixes libnds bugs.
2017-12-19 00:20:36 +01:00
StapleButter
3bdb7a7f2d
hook up the LAN (pcap) interface
2017-12-18 23:24:45 +01:00
StapleButter
0ff67d28d3
wifiAP: basic support for probereq/auth/assoc/deauth/deassoc
2017-12-18 22:44:29 +01:00
StapleButter
9632aa4021
start working on melonAP.
...
it sends beacons!
2017-12-18 21:37:17 +01:00
StapleButter
07685a80a6
add base for wifi AP
2017-12-18 19:53:51 +01:00
StapleButter
4ec2d109f7
wifi: more shit
2017-12-18 19:31:26 +01:00
StapleButter
e44bc7743d
actually init pcap etc
2017-12-17 23:09:48 +01:00
StapleButter
17087a1ece
start work on libpcap shit
2017-12-17 17:21:50 +01:00
StapleButter
e4e8d775c0
libui/windows: don't explode if setWindowText() fails. fixes random crash when closing window.
...
also add extra safety, can't hurt.
2017-12-17 02:11:28 +01:00
StapleButter
2e82a4f26a
gtk: add icon
2017-12-16 05:43:34 +01:00
StapleButter
ca41ce6efd
windows: add icon
2017-12-16 04:10:32 +01:00
StapleButter
fff4ca0c95
Merge pull request #216 from bentley/master
...
Small fixes
2017-12-12 02:34:00 +01:00
StapleButter
904316de60
fix ScreenGap loading, fixes #218
2017-12-12 02:32:11 +01:00
StapleButter
2333b17029
bump version number
2017-12-12 02:28:57 +01:00
StapleButter
73bf4471ee
audio: change output rate to 47340Hz, add resampler with small margin to elimiate pops/clicks due to output rate fluctuation
...
output rate is picked such that 1024 samples at that rate equal exactly 710 samples at the SPU's output rate
2017-12-11 18:41:05 +01:00
StapleButter
c639152541
urgl. how could I let something that dumb slip in
2017-12-07 11:17:51 +01:00
Anthony J. Bentley
4519a7ae1f
Pass correct number of arguments to printf.
2017-12-06 22:06:15 -07:00
Anthony J. Bentley
b603029549
Fix bitwise operation precedence.
2017-12-06 22:02:55 -07:00
StapleButter
e4f030149b
add option to toggle filtering
2017-12-07 02:50:05 +01:00
StapleButter
18bcefe83b
libui: add parameter to uiDrawBitmapDraw() to specify filtering
2017-12-07 02:41:46 +01:00
StapleButter
b58a5334fa
fix potential memleak
2017-12-07 01:24:39 +01:00
StapleButter
a7c7779917
ensure proper minimum window size at all times
2017-12-07 01:13:13 +01:00
StapleButter
b5046b9766
comment out some unwanted printf's
2017-12-07 01:04:00 +01:00
StapleButter
10b797e53d
libui/GTK: properly clean up menus, so it doesn't crash upon exit
2017-12-05 05:21:11 +01:00
StapleButter
746b4db382
libui/GTK: add area BG color support
2017-12-05 04:20:52 +01:00
StapleButter
dd529f0f5c
libui/GTK: fix drawmatrix transform order to match Windows. fixes rotation.
2017-12-05 04:12:03 +01:00
StapleButter
c5872dab7d
libui/GTK: start adding submenu support. cleanup still has to be done. use uiMenuAppendCheckItem() for checkable items.
2017-12-05 03:41:49 +01:00
StapleButter
bdf9f56152
libui/GTK: add uiAreaSetBackgroundColor, not hooked up yet
2017-12-05 03:04:17 +01:00
StapleButter
21e204cdea
don't pointlessly restrict the window size
2017-11-23 21:22:47 +01:00
StapleButter
85c375cce7
* remember screen rotation/gap/etc settings
...
* fix menu cleanup to take submenus into account properly, so it doesn't crash when exiting
2017-11-23 21:02:24 +01:00
StapleButter
aa4f427ed4
properly resize window when changing display settings, etc
...
begin polishing things
2017-11-23 20:01:43 +01:00
StapleButter
8e6d834f13
libui: add API for setting a background color for uiArea. (TODO: do for GTK)
...
make window background black.
2017-11-23 19:28:06 +01:00
StapleButter
b96ac8e000
(finally) fix sound
...
* reset capture position when starting capture
* reorder channel/capture handling
* implement FIFO for channel and capture
2017-11-11 18:46:42 +01:00
StapleButter
c3675af538
properly reset IE/IF, fixes some reset issues.
2017-11-09 16:02:37 +01:00
StapleButter
35c3b34a09
make screen rotation configurable. start making it all clean.
2017-11-09 16:02:17 +01:00
StapleButter
f2a5be6096
make touchscreen code take rotation into account
2017-11-09 00:15:59 +01:00
StapleButter
34513063ab
begin work on rotation
2017-11-09 00:04:01 +01:00
StapleButter
bb87a709be
cooler screen positioning in horizontal mode
2017-11-08 02:02:15 +01:00
StapleButter
e6e5f48748
attempt at horizontal mode, I guess
2017-11-08 01:53:20 +01:00
StapleButter
857ba49759
actually implement screen gap
2017-11-08 01:34:11 +01:00
StapleButter
5bea3cc530
3D: add support for 8bit accesses to GXSTAT (Golden Sun - Dark Dawn)
2017-11-04 15:13:01 +01:00
StapleButter
0a04efc33e
attempt at auto-emphasis mode, emphasizing main screen
2017-10-30 05:45:26 +01:00
StapleButter
85d823d4c7
fix more sizing bugs
2017-10-30 05:17:20 +01:00
StapleButter
f4e7e2f62a
fix aspect ratio code
2017-10-30 05:08:04 +01:00
StapleButter
c9082cd50d
some attempt at fancypants scaling, I guess
2017-10-30 04:39:50 +01:00
StapleButter
b8706c29c7
make it betterer
2017-10-30 03:21:12 +01:00
StapleButter
84a842c6f3
libui/windows: add support for submenus
2017-10-30 03:11:45 +01:00
StapleButter
3881b2615b
libui/Windows: allow file pickers to navigate through shortcuts. fixes #199
2017-10-21 22:24:29 +02:00
StapleButter
e9798e032b
up version number (I forgot)
2017-10-11 04:38:11 +02:00
StapleButter
befc5db031
restore FPS counter
2017-10-11 03:06:30 +02:00
StapleButter
f9d9aaec11
Merge pull request #112 from bentley/master
...
Portability fixes
2017-10-11 02:56:06 +02:00
StapleButter
73626e9f45
fix memory leak
2017-10-11 00:40:56 +02:00
StapleButter
273fbe24f4
add fopen wrapper to support UTF8 paths/filenames under Windows.
2017-10-11 00:32:43 +02:00
StapleButter
ee1da52d77
fail gracefully when ROM loading fails
2017-10-11 00:01:05 +02:00
Anthony J. Bentley
56bf1ecc13
Treat failed haptics initialization as a warning, not a fatal error.
2017-10-09 03:42:50 -06:00
Anthony J. Bentley
df19b93408
Include POSIX headers required for fd_set and INADDR_ANY.
2017-10-09 03:41:17 -06:00
StapleButter
a15c395460
GTK: file drop support. adsfgdgfdg
2017-10-05 03:10:14 +02:00
StapleButter
084d9254e3
maybe now the input dialog can stop being dumb
2017-10-05 02:05:23 +02:00
StapleButter
d895dfc9fb
hopefully fix that shit for good
2017-10-05 01:58:41 +02:00
StapleButter
a84caacb03
make window actually resizable below min size. we lose proper client sizing under GTK tho.
2017-10-05 01:35:50 +02:00
StapleButter
f714c492b9
GTK: hook SetMinSize. fuck around with gtk_widget_set_size_request() so the window can be resized smaller than the initial size.
2017-10-05 01:22:03 +02:00
StapleButter
5d5311c53c
use grids instead of nested boxes for input config dialog. (still lags, needs optimization)
...
adjust things to make those dialogs sexier.
2017-10-05 01:03:22 +02:00
StapleButter
9d3f13b689
rework things a bit.
...
also remove some useless variables.
2017-10-05 00:13:22 +02:00
StapleButter
5b71ffceee
minor fix
2017-10-04 02:47:49 +02:00
StapleButter
9125620ff1
christ, did I seriously forget to remove that code
2017-10-03 03:28:49 +02:00
StapleButter
012a7d61a7
actually make uiKeyName() work
2017-10-03 02:52:30 +02:00
StapleButter
9527499124
hook up area key events
2017-10-03 02:19:42 +02:00
StapleButter
fbe4e4938b
finally finish cairo bitmap support. asdsfdfgfsgf
2017-10-03 01:29:35 +02:00
StapleButter
5450c7cc3d
hook up Resize event
2017-10-03 00:51:56 +02:00
StapleButter
7f05bf24ad
libui/GTK: start catching up. atleast now it runs without exploding (mostly).
2017-10-03 00:28:41 +02:00
StapleButter
dad0e6b6e8
add support for non-resizable windows
2017-10-02 23:26:25 +02:00
StapleButter
f8b63759f7
save window size
2017-10-02 23:15:39 +02:00
StapleButter
4781bd5671
fix ARM7 BIOSPROT. not that it matters.
2017-10-02 04:57:23 +02:00
StapleButter
dbb174c531
implement 8bit reads to div/sqrt registers.
...
RaymanDS showed some interest for that, so there we go.
RaymanDS still fucks up.
RaymanDS is a pile of shit.
melonDS is bad at timings.
2017-10-02 04:27:50 +02:00
StapleButter
d0770596ea
re-add basic scaling
2017-10-02 03:34:17 +02:00
StapleButter
09920126dd
add support for setting an explicit min size for libui controls. for now only supported by uiArea.
2017-10-02 01:58:09 +02:00
StapleButter
ce592a1d80
this TODO item is already done, idiot
2017-10-02 00:55:44 +02:00
StapleButter
1975efaeea
fix bugs with SPI shutdown
2017-10-01 03:19:39 +02:00
StapleButter
9ad89d8cb5
fix crash under Windows 10
2017-09-30 23:17:36 +02:00
StapleButter
ab9800fbac
actual joystick input
...
also sync keyboard input nicely
2017-09-30 20:05:56 +02:00
StapleButter
9f486de76a
allow entering joystick config
2017-09-30 19:27:47 +02:00
StapleButter
acc23f47cc
actually get the input dialog somewhere
2017-09-30 18:58:13 +02:00
StapleButter
cb284fbe2b
get the input dialog started
2017-09-26 02:20:28 +02:00
StapleButter
172babe9d0
add general emu settings dialog
2017-09-25 04:26:41 +02:00
StapleButter
69bc06402c
change default keyboard mapping
2017-09-23 04:10:25 +02:00
StapleButter
f52322ee20
* support for dragdrop
...
* support for loading ROMs via command line (except it will try to get the BIOS/firmware from where the ROM is. derp)
* re-add missing BIOS/firmware dialog. fix libui to allow dialogs without a parent window.
2017-09-23 03:39:09 +02:00
StapleButter
14b7cf1987
add hooks for when the window gets/loses focus.
...
properly refocus draw area.
lay base for dragdrop.
2017-09-23 02:58:04 +02:00
StapleButter
a9cacb9dd7
make Quit menu item actually work
2017-09-23 02:03:11 +02:00
StapleButter
e298d50e76
avoid potential race conditions during reset/etc by waiting till the emu thread got the message to pause
2017-09-22 01:33:18 +02:00
StapleButter
332282c809
oh also, fuck that shit
2017-09-21 21:44:39 +02:00
StapleButter
8e41ed751e
change 'pause' menu item to a proper check item. GTK is picky about it.
2017-09-21 21:31:20 +02:00
StapleButter
65b332b152
reenable wifi socket code
2017-09-21 04:42:31 +02:00
StapleButter
2eea801d26
goodbye wx crap. you will not be missed.
2017-09-21 04:35:55 +02:00
StapleButter
76c5451ad9
I'm an idiot
2017-09-21 04:09:09 +02:00
StapleButter
48cf9eb805
make it a menu option while we're at it
2017-09-21 04:08:03 +02:00
StapleButter
495d0ba12d
add support for SPI shutdown, btw
2017-09-21 03:59:12 +02:00
StapleButter
0aa3434ec7
double-buffer framebuffer, eliminates artifacts
2017-09-21 03:49:12 +02:00
StapleButter
f13c3fc90c
implement run/pause/reset menus
2017-09-21 03:42:40 +02:00
StapleButter
b70e085921
fix possible crashes upon exit
2017-09-19 21:06:15 +02:00
StapleButter
dbefaf0ad3
Windows: fix colors. use fallback if hardware render mode doesn't work.
2017-09-19 20:48:18 +02:00
StapleButter
defe46e37e
GTK: apply window client size to childHolderWidget. fixes sizing when a menubar is present.
2017-09-19 17:38:43 +02:00
StapleButter
edd33187b6
GTK: thread-safe refresh. doesn't freeze randomly anymore.
2017-09-19 16:53:02 +02:00
StapleButter
4db1a51fa4
add Platform thread/semaphore support, using SDL
2017-09-19 15:39:41 +02:00
StapleButter
62405cde0a
change final framebuffer format (again. sorry.) to xRGB, more compatible
2017-09-19 15:39:00 +02:00
StapleButter
8d79355f2e
libui: add cairo bitmap code (preliminary). fix bug where putting a draw area directly in the window caused it to be tiny.
2017-09-19 02:22:07 +02:00
StapleButter
5979ab2eb2
libui: fix bug with filepicker filters under GTK. add skeleton for bitmaps. add the right cmake shit.
2017-09-19 00:36:25 +02:00
StapleButter
f30e19a2ec
touchscreen input
2017-09-17 23:36:28 +02:00
StapleButter
8e7d46e717
* attempt at keyboard input, via raw scancodes
...
* load config, etc
* some things are nicer, too
2017-09-17 23:25:32 +02:00
StapleButter
66106a8829
sound
2017-09-14 17:06:41 +02:00
StapleButter
d463f8252d
* build settings for Release
...
* fix off-by-one error in bitmap drawing
2017-09-14 02:30:11 +02:00
StapleButter
ba113d0ca9
actually run the emulator
2017-09-14 00:56:52 +02:00
StapleButter
f18690487c
start working on API to draw bitmaps
...
lay out emu thread
2017-09-14 00:30:12 +02:00
StapleButter
62a26977c7
libui: primp file picker dialogs
...
* support for filters, for Windows (tested) and GTK (theoretical)
* add extra parameter for setting the start directory, but not supported yet
2017-09-11 15:56:52 +02:00
StapleButter
dbcec7efb4
actually take it somewhere
2017-09-09 03:23:02 +02:00
StapleButter
70e4841d31
another UI attempt, I guess.
...
sorry.
2017-09-09 02:30:51 +02:00
StapleButter
c9ac08aa5b
3D: blend translucent pixels with bottom pixels when needed.
...
fixes antialiasing within shadows, under translucent polygons, etc
2017-08-28 22:19:49 +02:00
StapleButter
183b8b58e0
3D: move shadow mask rendering to separate function, optimize it (it doesn't need to interpolate all vertex attributes)
2017-08-28 20:27:56 +02:00
StapleButter
ee6daa0e62
fix antialiasing along Y-major edges
2017-08-28 18:48:06 +02:00
StapleButter
2e23ae54b2
3D:
...
* more accurate polygon edges (still not perfect. heh)
* antialiasing (doesn't always work)
2017-08-28 18:37:07 +02:00
StapleButter
d656e6e7ff
3D: faster and more accurate interpolation
2017-08-17 23:34:37 +02:00
StapleButter
bc1385e905
3D: revise fog calculation to match hardware (emulate precision loss and overflow with big shifts)
2017-08-16 22:20:53 +02:00
StapleButter
0106406aff
* allow 128KB firmwares (DSi/3DS dumps)
...
* document firmware sizes better
2017-08-05 19:13:55 +02:00
StapleButter
4a899ebe3f
3D: fix culling. fixes #86 . watch out for any missing polygons elsewhere.
2017-07-24 01:06:08 +02:00
StapleButter
51d29c8804
dgfhtrydthg
2017-07-23 18:43:22 +02:00
StapleButter
82e42c5be7
2D: mosaic
...
sprites might be mosaiced wrong, esp. rotscaled ones. blrgdfgdf
2017-07-23 18:36:00 +02:00
StapleButter
e6f5507c9e
add some more GPU IO
2017-07-23 15:31:09 +02:00
StapleButter
f869975a51
implement 8bit writes to DISPCNT/BGCNT/BGPOS
...
fixes #98
2017-07-23 01:39:21 +02:00
StapleButter
0df3a29374
* FPS counter displays target framerate
...
* fix potential hang and out-of-bounds drawing when VCount is modified during drawing
2017-07-21 10:19:56 +02:00
StapleButter
cfb9e20fe1
* bump version number
...
* BLDALPHA is readable
2017-07-16 03:47:44 +02:00
StapleButter
08bdef481f
add setting for whether to bind the wifi socket to any address or to loopback only
2017-07-16 00:57:26 +02:00
StapleButter
bb963c35a4
while we're at it: emulate div/sqrt timings
2017-07-15 19:46:27 +02:00
StapleButter
0d58fcb5d6
add basic response for Pokémon IR transceiver (SPI command 08). lets your pokémon gain EXP.
2017-07-15 19:34:35 +02:00
StapleButter
cb0e026ec1
implement transfer delays for both SPI busses
...
also make microphone input return 0x800
2017-07-15 19:29:10 +02:00
StapleButter
6b6389fbb4
separate polygonID attributes for opaque and translucent pixels.
...
rendering translucent pixels preserves opaque polygonID and edge flags for edgemarking.
fixes edgemarking malfunctions, like #80 or black dots in Pokémon games
2017-07-15 15:24:25 +02:00
StapleButter
d978603852
3D: fix Z calculation in Z-buffering mode (should use original W, not normalized one). fixes horrendous Z-fighting in Pokémon games.
2017-07-14 18:35:34 +02:00
StapleButter
cd6ecfc21f
apply the interpolation fix to Z interpolation.
...
more accurate conversion of Z values.
but this doesn't fix the horrendous Z-fighting in Pokémon B/W because of course it doesn't >_<
2017-07-14 04:49:29 +02:00
StapleButter
e1926d6e97
2D: fix blending against the 3D layer or bitmap sprites (when those are second target)
...
fixes #68
2017-07-14 00:32:25 +02:00
StapleButter
04172f47de
fix potential overflow in fog density calculation
2017-07-14 00:12:35 +02:00
StapleButter
a1401e724c
* actually fix linear interpolation when y0>y1
...
* change the backfacing attribute bit, so that it doesn't mess with edgemarking
2017-07-13 23:09:42 +02:00
StapleButter
800540b710
attempt to fix interpolation when y0>y1
2017-07-10 13:31:05 +02:00
StapleButter
8f031f698b
normalize W values in both directions (0123-0157 -> 1230-1570)
2017-07-06 18:54:51 +02:00
StapleButter
3aa83ae641
3D:
...
* undo 'winding sorting' hypothesis
* special depth test rules: 'less than' function becomes 'less or equal' when rendering front-facing polygon pixels against back-facing opaque pixels
2017-07-06 18:38:13 +02:00
StapleButter
b29b128a1b
2D: fix rotscaled bitmap sprites (dumb bug of the year).
...
fixes #41 and #34
2017-07-06 12:17:45 +02:00
StapleButter
dc32613028
3D: opaque polygons are sorted by winding order
...
the Sands of Destruction character menu relies on this, it mixes and matches polygon windings to thwart Y-sorting
2017-07-06 02:02:30 +02:00
StapleButter
d357b1c2ac
apparently they suck at keeping their SDL distributions up to date
2017-07-05 21:37:28 +02:00
StapleButter
93ab7064b2
2D: implement large BG, fix non-large bitmap BG. fixes #61
2017-07-05 19:31:13 +02:00
StapleButter
678ae00e0a
support 16-bit reads to the div/sqrt registers
2017-07-05 18:46:19 +02:00
StapleButter
d5376b4184
3D: Y-sorting
2017-07-05 18:38:10 +02:00
StapleButter
01404ac6c3
3D: move opaque/translucent sorting to GPU3D.cpp
2017-07-05 18:11:00 +02:00
StapleButter
1acf355d99
3D: change viewport handling to match hardware. finally fixes #18
2017-07-04 19:11:43 +02:00
StapleButter
ad58a68fc9
3D: fix boxtest coord overflow. fixes #57
2017-06-29 09:48:41 +02:00
StapleButter
da10f9b3f6
fix rendering for crapoed 'butterfly' polygons
2017-06-28 21:19:44 +02:00
StapleButter
209a639461
2D: implement enough of mode6 to fix #65 -- shows 3D layer. large BG still needs to be done.
2017-06-28 17:01:20 +02:00
StapleButter
5f6e8cc30b
fix toon highlight mode. GBAtek is wrong.
2017-06-28 09:19:38 +02:00
StapleButter
f113f2f26e
3D: fix missing term in MatrixTranslate(). fixes Monster Trucks billboards.
2017-06-27 20:52:38 +02:00
StapleButter
b5784540ab
move HBlank 48 cycles later
2017-06-26 22:01:29 +02:00
StapleButter
fbc6ce5fa0
fix render/capture order, corrects interaction of capture and VRAM display. fixes #56 .
2017-06-26 13:39:42 +02:00
StapleButter
4afac28263
proper display FIFO emulation
2017-06-26 11:02:10 +02:00
StapleButter
155609b6d9
initialize clearZ to 0x7FFF. fixes #38
2017-06-26 01:18:54 +02:00
StapleButter
8b262f5ee5
also fix the bug for cart SPI
2017-06-26 00:38:07 +02:00
StapleButter
77627af438
* implement firmware saving for user settings
...
* fix bug with SPI commands that have no parameters
2017-06-26 00:35:19 +02:00
StapleButter
39fbc415f6
new save heuristic. atleast Scribblenauts doesn't lose its shit now.
...
shut up shibs
2017-06-25 17:35:45 +02:00
StapleButter
4ffb217791
add support for 16bit IE reads/writes ( fixes #66 )
2017-06-24 01:21:09 +02:00
StapleButter
6ba178d7cf
wifi: little fix related to replies (when the address isn't set, don't try to adjust the TX header)
2017-06-22 16:38:35 +02:00
StapleButter
456fe23850
wifi: tiny fix (bad TXSTAT after MP host transfer)
2017-06-20 12:20:37 +02:00
StapleButter
c5dbb01aa3
wifi: fix for MP replies.
...
clean up code.
make packet logging conditional.
2017-06-18 16:26:59 +02:00
StapleButter
d5fd96c500
wifi: another little fix
2017-06-18 03:41:36 +02:00
StapleButter
8cde75ce53
wifi: fix reception of MP replies
...
(still not working, don't catch fire Ndymario)
2017-06-18 02:05:21 +02:00
StapleButter
33fc98fac4
send empty reply when no MP reply is configured
2017-06-16 01:54:31 +02:00
StapleButter
6cda8d98b4
emulate RXTXADDR. receive packets progressively instead of all at once.
2017-06-15 23:38:48 +02:00
StapleButter
43cedebb65
implement RFSTATUS/RFPINS values for TX and RX
2017-06-15 23:01:44 +02:00
StapleButter
32e6e81ef4
more accurate MP reply
2017-06-15 22:26:32 +02:00
StapleButter
4b1b0bdec5
wifi: more correct IRQ behavior, time MP replies better.
2017-06-15 22:10:19 +02:00
StapleButter
402a60ea34
wifi: proper TX/RX status switch and RX check
...
readme: little update
2017-06-15 21:41:18 +02:00
StapleButter
49f8aec656
fix some shit
2017-06-13 17:44:35 +02:00
StapleButter
3499949129
* send undefined instructions to the proper exception handler
...
* make ARM9-only instructions fail on ARM7
2017-06-13 15:09:39 +02:00
StapleButter
bbd251ddbc
fix QADD/QSUB/QDADD/QDSUB, those would write their result to the wrong register.
...
also make them ARM9-only.
2017-06-13 11:17:22 +02:00
StapleButter
581a0954ad
wifi: fix IRQ14 emulation. other fixes and attempts.
2017-06-13 01:01:46 +02:00
StapleButter
cb65536c22
fix timing issue with ARM7 DMA (occasionally crapoed the 'Nintendo DS' sound when booting the firmware)
2017-06-12 19:00:32 +02:00
StapleButter
bdb7edab51
fix big with ARM STM instructions that include Rb in Rlist
2017-06-12 16:36:24 +02:00
StapleButter
9852709ca3
wifi: attempt at further MP functionality (reply, ack). not working. ugly.
2017-06-09 15:11:39 +02:00
StapleButter
0f827337c8
* fix TX logic again
...
* add multiplayer CMD slot
* misc fixes
2017-06-07 00:37:14 +02:00
StapleButter
f749ede319
wifi: cmd timer
2017-06-05 14:10:12 +02:00
StapleButter
9e36cba941
wifi: fix TX start logic (it is possible to write TXREQ then TXLOC)
2017-06-05 01:58:14 +02:00
StapleButter
fb1eb43fb4
* bump version number
...
* implement 32bit reads to keypad registers
* also implement RCNT more properly
2017-06-04 22:34:31 +02:00
StapleButter
c2fa561e40
fail gracefully if BIOS/firmware are missing
2017-06-04 18:36:59 +02:00
StapleButter
d8ca8e8300
fix socket recv under anything not Windows
2017-06-04 18:25:15 +02:00
StapleButter
fa2db3826e
(finally) make the threaded 3D renderer option actually work
2017-06-04 15:55:23 +02:00
StapleButter
568b9fbf49
edge marking
2017-06-03 22:33:14 +02:00
StapleButter
64a447bb7c
clean up some shit. make framebuffer access less weird.
2017-06-03 22:10:32 +02:00
StapleButter
d81b68b16b
* fix range for 'equal' Z-test mode
...
* confirm clear Z value for screen outer borders
* misc code cleanup
2017-06-03 21:46:14 +02:00
StapleButter
77d0a0d76e
only do lower-pixel rendering when rendering under an edge
2017-06-01 15:16:44 +02:00
StapleButter
d1781c8bf2
remove more per-pixel checks
2017-06-01 14:59:41 +02:00
StapleButter
27c023a0cc
separate rasterizer inner loop into three loops for leftedge/middle/rightedge
2017-06-01 01:02:39 +02:00
StapleButter
fe55ef1af1
* begin work on antialiasing, but not good yet. also code sucks.
...
* start making code nicer
2017-06-01 00:45:47 +02:00
StapleButter
d3b3255ce3
* add 'push old pixel down' behavior for antialiasing
...
* delay final pass (edge/fog/AA) one scanline, required for edgemarking
2017-05-28 19:18:16 +02:00
StapleButter
ae78faf2a7
rework slope/edge code. lay groundwork for antialiasing.
2017-05-28 18:36:42 +02:00
StapleButter
529039f766
* delay 3D rendering a bit (fixes Monster Trucks flickering)
...
* remove logging for ITCM/DTCM
2017-05-27 23:47:20 +02:00
StapleButter
6f4d835c7f
fog
2017-05-26 15:14:22 +02:00
StapleButter
a63ab24447
fix crapoed shadows
2017-05-26 04:00:15 +02:00
StapleButter
911888f1e0
fix alpha equation when blending is disabled
2017-05-26 03:16:23 +02:00
StapleButter
8558eff8aa
properly reset 3D thread state
2017-05-26 01:22:11 +02:00
StapleButter
9d2b36127d
add threaded 3D option to the interface and config file. not functional yet.
2017-05-25 22:50:36 +02:00
StapleButter
0c31a7ab01
quick hack: Tab toggles framerate limit.
...
misc little fix.
2017-05-25 22:46:01 +02:00
StapleButter
4b3caedbe7
first attempt at threading the 3D renderer
2017-05-23 23:38:28 +02:00
StapleButter
88d982b7e3
proper stencil buffer
2017-05-22 22:29:21 +02:00
StapleButter
b66ac09e43
make the renderer truly per-scanline
2017-05-22 22:22:26 +02:00
StapleButter
189973f564
gjhdiqokjdrhygjqdryhsjyryujytsrgrtfdhfijeogfieOZPYFGRozhmvyfgrIOZUHESjhjhrgthistoyghresodgyrojyroturgeiutoiyzryueirefrhgdjg
2017-05-21 20:48:15 +02:00
StapleButter
1c6c2564d5
blarg
2017-05-21 20:43:40 +02:00
StapleButter
cb1b03b253
make the 3D renderer work per-scanline
2017-05-21 20:14:03 +02:00
StapleButter
edc959dcf5
draft APIs for threading in the core.
...
also, misc wifi crap, nothing noteworthy.
2017-05-19 22:17:28 +02:00
StapleButter
d29dc7a2f0
wifi improvements
2017-05-12 05:20:15 +02:00
StapleButter
dba6776817
more work on packet reception.
2017-05-12 01:21:39 +02:00
StapleButter
3b07da3a97
attempt at actually sending packets.
...
into the void for now.
2017-05-12 00:48:42 +02:00
StapleButter
01361f006e
(untested yet) code for sending and receiving packets via sockets
...
MAC randomization
2017-05-11 23:43:57 +02:00
StapleButter
e9a24b4d06
forgot Windows needs extra setup for sockets
2017-05-11 23:03:41 +02:00
StapleButter
9a2e2998e9
salvage socket init code
2017-05-11 19:57:49 +02:00
StapleButter
eb7154e426
woops
2017-05-10 02:30:18 +02:00
StapleButter
f54f54fb7e
add support for writing to VCount. incl. fucked-up display and altering framerate accordingly.
2017-05-10 02:21:02 +02:00
StapleButter
63e15d2480
framerate limiter that sucks less, based off SDL2_gfx
2017-05-10 01:42:53 +02:00
StapleButter
9fe24cb1e7
latch 3D registers upon VBlank
...
(fixes the last bugs in Gericom's train game)
2017-05-09 22:22:52 +02:00
StapleButter
36fa621436
lay base for core->platform interaction
...
(immediately planned: threaded 3D renderer, wifi connectivity)
2017-05-09 04:55:38 +02:00
StapleButter
bde9e7dfed
fill BIOS exception vectors with undef opcode when no BIOSes are found
2017-05-09 04:52:17 +02:00
StapleButter
50d2ffb207
misc. things
2017-05-09 03:54:37 +02:00
StapleButter
7c1443b973
fix lighting behavior with normals that overflow
2017-05-03 23:54:31 +02:00
StapleButter
9e622dcc66
3D: attempt at fixing culling. players in Madden are no longer full of holes, and that also fixes occasional missing polygons in RaymanDS, and probably others.
2017-05-03 01:21:39 +02:00
StapleButter
ce240f4216
more wifi work: timers and their IRQs
2017-05-01 22:27:05 +02:00
StapleButter
d4270b0976
wifi: implement RAM access via the fancypants registers. allows Pictochat to proceed, but noone will reply to you.
2017-05-01 19:29:25 +02:00
StapleButter
ee8d621880
finalize CMake shit.
...
Windows will stick to CodeBlocks until making a cross-platform build system isn't a total trainwreck under Windows.
2017-04-30 03:46:27 +02:00
StapleButter
1b06b2765d
Merge branch 'master' of https://github.com/s1nka/melonDS
...
try to get CMake going, but it's not finished. don't use unless you know what you're doing.
2017-04-29 20:25:57 +02:00
StapleButter
ee0effd22f
implement xflip for bitmap sprites ( fixes #32 )
2017-04-29 16:18:33 +02:00
StapleButter
da31af9202
fix Z-buffering. not really clean, and not perfectly accurate.
2017-04-29 00:20:04 +02:00
StapleButter
2273bd2ea4
fix texcoord-from-vertex mode. it works like for normals (1.0 = 1/16 texel)
2017-04-28 17:35:57 +02:00
StapleButter
5de98cd484
add 32bit write to DIVCNT and SQRTCNT
2017-04-28 17:23:18 +02:00
StapleButter
ecbcf2172a
only trigger cart DMA on the CPU for which the cart interface is enabled.
...
fixes unstable firmware boot.
2017-04-27 18:45:43 +02:00
StapleButter
5217f4b056
set POSTFLG to 1 upon direct boot. fixes Pokémon White among others.
2017-04-26 16:17:03 +02:00
StapleButter
d9afcc37b8
fix display capture blending bugs. fancypants motion blur filters shouldn't look like acid trips anymore.
2017-04-25 16:55:19 +02:00
StapleButter
29938b566a
tiny thing
2017-04-25 16:24:31 +02:00
StapleButter
6707e5bb85
support 16bit access to the DMA fill regs
2017-04-25 16:13:16 +02:00
StapleButter
7ac538d5d2
better heuristic for Flash save type
2017-04-25 03:24:22 +02:00
StapleButter
9b5f293a9e
implement leading gap and 0x200-gap delays for ROM transfers
2017-04-25 02:26:37 +02:00
StapleButter
9eb68c2ede
misc optimizations
2017-04-25 01:14:26 +02:00
StapleButter
7ea488a3c9
support 8-bit writes to the color effect registers
2017-04-24 16:01:24 +02:00
StapleButter
8fd1124117
implement 8bit reads to the joypad ports
2017-04-24 01:30:30 +02:00
StapleButter
bdac2467e7
oh well
2017-04-23 15:38:39 +02:00
StapleButter
1759672d14
a few attempts at optimization
2017-04-23 15:25:15 +02:00
StapleButter
60cdc7d6f7
fix display capture. dumb bug of the year.
2017-04-23 01:05:04 +02:00
StapleButter
96b471d729
fix shadow oddities
...
not a proper fix, but shadows aren't emulated properly anyway
2017-04-22 19:06:48 +02:00
StapleButter
a086e22023
attempt at shadows. they're still a bit weird tho.
2017-04-22 18:04:54 +02:00
StapleButter
70c72004ac
behavior for translucent pixels is preserved even when alphablending is disabled
2017-04-22 17:15:50 +02:00
StapleButter
4f72ee3895
add support for polygon ID and conditional depth update for translucent pixels
2017-04-22 16:47:31 +02:00
StapleButter
eb656857d9
optimize the 3D renderer somewhat
2017-04-21 22:40:15 +02:00
StapleButter
796e60828c
small optimizations to the 3D renderer
2017-04-13 19:53:09 +02:00
StapleButter
2380c2f4ea
hopefully fix the DMA bug without breaking everything this time.
2017-04-13 04:16:57 +02:00
StapleButter
c62e160b26
* decal texture blending
...
* start implementing toon shading
* temp. revert the DMA fix, causes issues
2017-04-12 20:25:54 +02:00
StapleButter
54eeb38d3d
make CPU freezes take place immediately. fixes RaymanRR2 backgrounds occasionally getting cut in half.
2017-04-12 17:53:15 +02:00
StapleButter
db20d7408e
better wifi stub
2017-04-12 16:58:09 +02:00
StapleButter
96a3848d84
make ROM command handling accurate, remove gross DMA hack.
2017-04-11 20:21:31 +02:00
StapleButter
0b981f2a4d
fix addressing for tiny EEPROM.
2017-04-11 01:21:35 +02:00
StapleButter
84664a6ded
bypass first save command byte when it's zero. for Pokémon games.
2017-04-10 20:56:22 +02:00
StapleButter
8bbcc83771
* always render normal BG/OBJ graphics (even if they're not getting displayed, they can still be fed to the capture unit)
...
* fix 3D viewport calculation
* keep track of the clearbuffer attributes before VBlank
2017-04-10 20:24:41 +02:00
StapleButter
f2622c047b
some attempt at actually stubbing out wifi. except it won't fucking work.
2017-04-10 18:47:11 +02:00
StapleButter
2fef876eeb
box test, pos test, vec test
2017-04-09 17:15:39 +02:00
StapleButter
de4b046232
* more accurate flags (push/pop busy, test busy, vertex/poly overflow)
...
* more versatile and better clipping code
2017-04-09 16:12:12 +02:00
StapleButter
28ebd56fb8
* fix bug with 0-line tall windows (would be enabled for the whole screen)
...
* map some I/O ports
2017-04-09 03:47:47 +02:00
StapleButter
bc70f00372
windows!
2017-04-09 03:35:32 +02:00
StapleButter
3f3b2977d7
* sound capture from left/right mixers
...
* support for appropriate output modes
2017-04-08 22:59:27 +02:00
StapleButter
a4f436f827
* stub more wifi crap
...
* louder sound
* misc fixes
2017-04-07 17:37:49 +02:00
StapleButter
d8bbf25431
* PCM8, PCM16, ADPCM, white noise
...
* volume, volume div, panning, master volume
2017-04-07 01:06:10 +02:00
StapleButter
76c4e57608
preliminary audio. only supports PSG (and handles all channels as such). drops out every once in a while.
2017-04-06 22:38:46 +02:00
StapleButter
8d66beba6b
start SPU work
2017-04-06 19:44:34 +02:00
StapleButter
28cddadfbc
* bump version number
...
* feed system time into RTC
* start laying base for sound
2017-04-04 15:32:50 +02:00
s1nka
5d13538584
add CMake build system
2017-04-02 13:33:01 +06:00
StapleButter
3a61ed0a91
allow crapoed THUMB hireg ADD/CMP/MOV
2017-03-31 02:20:29 +02:00
StapleButter
bfe22e0b9b
allow 16/32 bit writes and reads to the gamecard command registers.
2017-03-31 01:50:01 +02:00
StapleButter
46ed4aeeb1
one last fix
2017-03-30 03:31:27 +02:00
StapleButter
8e5f175f5e
fix touchscreen input. proper cleanup of threads. meaningless codeblocks crap.
2017-03-30 03:24:46 +02:00
StapleButter
a65b45a334
I am a fucking idiot
2017-03-29 23:09:47 +02:00
StapleButter
99e4ad409f
maybe this shit will finally work. also update the README.
2017-03-29 22:56:30 +02:00
StapleButter
9baeb3bd1a
tweaks
2017-03-29 22:49:36 +02:00
StapleButter
41f4ad6620
derp
2017-03-29 22:44:48 +02:00
StapleButter
4202a8f826
finish Flash support, mostly
2017-03-29 22:12:53 +02:00
StapleButter
2db5b21760
* emulation settings dialog
...
* proper setting for booting directly or from BIOS
* fix shit, again
2017-03-29 20:23:41 +02:00
StapleButter
f88226c99f
remember window size.
...
fix extra shit.
2017-03-29 20:12:03 +02:00
StapleButter
2ae2fedf21
minimum size for the SDL window.
...
screen scaling that preserves aspect ratio.
touchscreen takes scaling into account.
2017-03-29 19:41:25 +02:00
StapleButter
6bf0bf3924
blarg
2017-03-29 19:00:51 +02:00
StapleButter
4e7dc60d37
* clean up code
...
* working-ish run/pause/reset
* proper closing/cleanup
* ability to run BIOS alone
2017-03-29 18:59:20 +02:00
StapleButter
c0734352ab
don't rely on a SDL window to get keyboard input
2017-03-29 17:50:11 +02:00
StapleButter
e2cc3f1a72
attempt
2017-03-28 23:21:56 +02:00
StapleButter
d6bab52baa
oops
2017-03-28 22:12:17 +02:00
StapleButter
b5f461b950
custom main() and init SDL before everything else.
...
included WinMain() for compatiblity.
2017-03-28 22:07:58 +02:00
StapleButter
4ad96f1b34
start work on a separate SDL window
2017-03-28 17:03:08 +02:00
StapleButter
55e75dab47
stop the Start button from getting lost every goddamn time
2017-03-25 16:41:12 +01:00
StapleButter
f9a76124c3
woops
2017-03-25 16:25:12 +01:00
StapleButter
762b91d640
actual joystick support
2017-03-25 16:18:35 +01:00
StapleButter
12daf16282
input dialog finished
2017-03-25 05:25:03 +01:00
StapleButter
e6124c4776
start getting somewhere with that input config dialog
2017-03-25 05:04:15 +01:00
StapleButter
68eb4f6caf
* implement missing graphics (affine BG, rotscaled bitmap sprite)
...
* fix potential crash upon exit
* more work on the input config UI
* misc fixes
2017-03-24 20:53:01 +01:00
StapleButter
f7ac0090f0
fix bugs
2017-03-23 23:55:22 +01:00
StapleButter
4f5eb6caa0
support for tiny EEPROM
2017-03-23 23:47:55 +01:00
StapleButter
49314244e1
start work on the input config dialog. nonfunctional and looks like shit.
...
add manifest crap under Windows so it gets the cool controls.
2017-03-23 23:38:40 +01:00
StapleButter
f237afeb66
aqezsfrdgthfyjgu
2017-03-23 17:27:33 +01:00
StapleButter
8c059c9953
* more thread-safe UI
...
* config system base
* FPS counter and limiter
2017-03-23 17:14:48 +01:00
StapleButter
91f46b00fb
fix bug that occured when a flush command was sent between lines 192 and 215
2017-03-21 18:08:11 +01:00
StapleButter
3590d210f3
always apply matrix push/pop/store/restore to the vector matrix stack, even in mode 1. fixes SM64DS lighting.
2017-03-21 12:52:17 +01:00
StapleButter
3dd79d63f1
start 3D rendering at scanline 215. fixes Worms2D.
2017-03-21 11:45:12 +01:00
StapleButter
cc86aa57ae
fix that bug where NSMB's backgrounds lagged one frame behind
2017-03-21 02:11:49 +01:00
StapleButter
08a634371a
fix bug that happened when HDMA got interrupted (or any repeating DMA, for that matter)
2017-03-21 02:05:40 +01:00
StapleButter
3a89513c93
* more accurate direct boot
...
* improve touchscreen precision a bit
* proper support for 512KB firmwares
2017-03-21 00:53:04 +01:00
StapleButter
2150240cbd
implement some obscure DMA types
2017-03-20 22:18:35 +01:00
StapleButter
a56bf5c76c
make timers not suck. fixes issues (Worms2 intro FMV plays at the right speed, aging cart tests get further...)
2017-03-20 17:39:42 +01:00
StapleButter
f38bc94011
input, with hardcoded (but not retarded) key mappings.
...
touchscreen support that doesn't suck.
2017-03-20 00:43:45 +01:00
StapleButter
59d107bfb0
make ROM path not be hardcoded.
2017-03-19 19:07:39 +01:00
StapleButter
5a061bc638
begin work on wxWidgets+SDL interface
...
Windows crapo ditched
2017-03-19 18:43:01 +01:00
StapleButter
8a4ed8f41c
reorganize repo, move shit around
2017-03-16 23:01:22 +01:00