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