Commit graph

47 commits

Author SHA1 Message Date
Ilari Liusvaara
9a69dc3511 Namespace library port-controller stuff 2014-11-10 05:13:34 +02:00
Ilari Liusvaara
6639ab0437 Refactor controller runtime code generation 2014-11-10 02:53:58 +02:00
Ilari Liusvaara
986640b6ba controller_frame_vector: Use object instead of lambda for notify 2014-05-14 16:49:25 +03:00
Ilari Liusvaara
3ca96fb1b0 Reduce dependicies between header files 2014-05-13 13:42:07 +03:00
Ilari Liusvaara
57992947ae Optimize movie.find_frame()
The new version is about 6x faster.
2014-03-19 18:21:36 +02:00
Ilari Liusvaara
ceb35eb72c Back movie data off movie file structure 2014-02-01 17:35:22 +02:00
Ilari Liusvaara
3e8eed0ac1 Make git diff --check happy 2014-01-31 06:26:04 +02:00
Ilari Liusvaara
a2407c4e79 Refactor some generic reading/writing routines out of moviefile.cpp 2014-01-31 05:20:52 +02:00
Ilari Liusvaara
31ff9a4b8f Move main movie compatiblity checking to controller_frame_vector 2014-01-16 12:21:29 +02:00
Ilari Liusvaara
a9bc132e20 Make frame count controller_frame_vector property 2014-01-14 20:43:56 +02:00
Ilari Liusvaara
cc0d79566a Attempt to save if emulator is crashing 2013-11-30 13:55:07 +02:00
Ilari Liusvaara
b3417018d4 JSON-based controller descriptions
Also allows creating a new controller type (albeit with not optimal
performance) at runtime.
2013-10-20 21:18:27 +03:00
Ilari Liusvaara
93056a1993 Multitrack support 2013-10-06 22:13:52 +03:00
Ilari Liusvaara
379db3d4a8 Movie editor: Add panel for inputting axis values 2013-10-05 18:08:18 +03:00
Ilari Liusvaara
3373dcd53c Merge branch 'rr1-maint' 2013-10-03 12:39:07 +03:00
Ilari Liusvaara
e4db2486b5 Be more careful when parsing macros
... Don't throw random exceptions when encountering something of wrong
type, instead throw exception with more proper message.
2013-08-19 09:22:09 +03:00
Ilari Liusvaara
c4bcddbfbd Reserve 1 byte for each macro button instead of 2 bits 2013-08-18 23:11:25 +03:00
Ilari Liusvaara
4feb4b6290 Macros: Support ? modifier for macros (press at random) 2013-08-18 23:03:43 +03:00
Ilari Liusvaara
a38ce6b99e Make port_type::legal based on data instead of generated 2013-08-17 17:58:43 +03:00
Ilari Liusvaara
32b98a880c Kill port type IDs
Those IDs are not used for anything.
2013-08-03 17:07:13 +03:00
Ilari Liusvaara
59710f8f38 Merge branch 'rr1-maint' 2013-07-24 19:57:08 +03:00
Ilari Liusvaara
d10c863a56 Used_indices can be defined the same way for all ports, do so 2013-07-20 12:35:21 +03:00
Ilari Liusvaara
95bbae153e Whitespace cleanup 2013-07-06 23:21:11 +03:00
Ilari Liusvaara
fbf7c48b84 More code simplification using C++11 initializers. 2013-06-23 15:57:21 +03:00
Ilari Liusvaara
992096c8c5 Macro support 2013-06-23 15:57:20 +03:00
Ilari Liusvaara
efbc60d494 Allow button display symbols to be Unicode characters 2013-05-01 18:06:24 +03:00
Ilari Liusvaara
04f32ca48a Cleanup port defintions
- Replace explicit display methods with data-driven stuff.
- Deduplicate the default system port types.
- Remove generic_port_* because those aren't used in more than one place.

Serialization/Deserialization can't be made data-driven due to performance
constraints (those things are still autogenerated).
2013-05-01 17:18:56 +03:00
Ilari Liusvaara
f38671a3e2 TAS input plugin 2013-03-15 18:48:39 +02:00
Ilari Liusvaara
5a5968511c Fix saving unconnected ports to movie 2013-02-05 23:43:18 +02:00
Ilari Liusvaara
90d5fff406 Fix serializing multiple ports 2013-02-05 23:01:29 +02:00
Ilari Liusvaara
5eaa80a5f2 Merge branch 'rr1-maint'
This merges the basic movie editor functionality
2013-02-03 17:41:09 +02:00
Ilari Liusvaara
5ac3749677 Add button type TYPE_NULL 2013-01-14 13:40:19 +02:00
Ilari Liusvaara
c4b03bfcac Remove legacy lag counting
As major series transition breaks savestates anyway, no need to support
legacy mode anymore.
2013-01-11 22:56:45 +02:00
Ilari Liusvaara
981df4010c Settings-based controllers 2013-01-05 09:19:09 +02:00
Ilari Liusvaara
d0f01efee4 Data-driven controller buttons 2013-01-04 20:41:11 +02:00
Ilari Liusvaara
87309dad86 Refactor generic_port_* functions and get rid of button_symbols 2013-01-03 11:05:27 +02:00
Ilari Liusvaara
35eac9aaf4 Don't poll for / write non-valid control indices 2012-10-19 21:40:40 +03:00
Ilari Liusvaara
5795288660 Extern references in library/controller-data.hpp are no-no 2012-10-19 20:44:19 +03:00
Ilari Liusvaara
9a8c9377b2 Allow multiple types of controllers on one port 2012-10-19 20:32:18 +03:00
Ilari Liusvaara
bccb745a93 Have core-specific code build the legacy PCID maps 2012-10-19 19:53:15 +03:00
Ilari Liusvaara
aac0cd9a2c Move reset handling to cores
This removes special cases from movie code.
2012-10-17 14:35:36 +03:00
Ilari Liusvaara
8057c14d55 Avoid spurious polls arising from DRDY of nonexistent tuples
When asked for DRDY on unknown tuple, always answer True to avoid spurious
subframes.
2012-10-17 12:36:19 +03:00
Ilari Liusvaara
bbba76105c Have cores generate controller index maps
The cores have much better knowledge about how the index maps should
be constructed than the core code.

Also, this moves any backward compat hacks to cores that need those.
2012-10-17 09:32:51 +03:00
Ilari Liusvaara
4a4ec40019 Fix some really retarded code in library/movie 2012-10-17 00:05:37 +03:00
Ilari Liusvaara
624a93e79a Fix case where deserialize doesn't read whole last field 2012-10-12 14:56:34 +03:00
Ilari Liusvaara
4100e12211 Fix segfault in controllerframe::deserialize 2012-10-12 14:27:07 +03:00
Ilari Liusvaara
4365cadbc3 Support systems with !=2 ports
This also changes the Gambatte core to have just 1 port.
2012-10-11 20:06:40 +03:00