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