Commit graph

2539 commits

Author SHA1 Message Date
Oliver Schmidt
0c54a19a0b Adjusted to recent driver interface change.
The change is inspired by the code of the standard joystick driver. It is however absolutely untested.

Note: Sites like http://raster.atariportal.cz/english.htm state that there needs to be a delay when reading joysticks via the MultiJoy adapter. There's no such delay in the driver. But I don't dare to decide to add it.
2017-08-20 11:49:02 +02:00
Oliver Schmidt
7f52a770d9 Removed joy_masks array.
So far the joy_masks array allowed several joystick drivers for a single target to each have different joy_read return values. However this meant that every call to joy_read implied an additional joy_masks lookup to post-process the return value.

Given that almost all targets only come with a single joystick driver this seems an inappropriate overhead. Therefore now the target header files contain constants matching the return value of the joy_read of the joystick driver(s) on that target.

If there indeed are several joystick drivers for a single target they must agree on a common return value for joy_read. In some cases this was alredy the case as there's a "natural" return value for joy_read. However a few joystick drivers need to be adjusted. This may cause some overhead inside the driver. But that is for sure smaller than the overhead introduced by the joy_masks lookup before.

!!! ToDo !!!

The following three joystick drivers become broken with this commit and need to be adjusted:
- atrmj8.s
- c64-numpad.s
- vic20-stdjoy.s
2017-08-19 19:11:28 +02:00
Pascal de Bruijn
19f6ae1d54 make: change uppercase prefix var 2017-07-22 16:38:50 +02:00
Oliver Schmidt
6002e59c28 Merge pull request #453 from mrdudz/waitvsync
waitvblank for cbm targets
2017-07-18 15:38:27 +02:00
mrdudz
b6d3d32e88 wait for line 0 instead of last line 2017-07-18 01:06:20 +02:00
mrdudz
8eee51913a add headers/fix formatting 2017-07-18 01:04:53 +02:00
mrdudz
c24080f289 do banking 2017-07-18 00:41:54 +02:00
mrdudz
fe850fece8 implement waitvsync for plus4/c16 2017-07-17 23:55:18 +02:00
mrdudz
1abce3a2a1 rename all waitvblank() to waitvsync() 2017-07-17 23:15:05 +02:00
Oliver Schmidt
26a2d8a5c6 Merge pull request #457 from pfusik/const-arrays
Make some arrays const.
2017-06-30 09:28:40 +02:00
Greg King
141c25b42b Added the extra dependency file's directory as an order-only prerequisite.
The extra dependency files are put into different places than the extra object files' location.  Therefore, the rule must pre-make two directories.
2017-06-29 13:56:29 -04:00
Piotr Fusik
b31ae57be1 Make some arrays const. 2017-06-28 20:43:31 +02:00
Greg King
d1501731e4 Added a makefile dependency for the libraries' "extra" files.
Some of the files in "libsrc/*/extra/" include other library files.  But, the "lib/*.o" files weren't rebuilt when those other files changed.

The new dependency rules must be "bootstrapped".  You must force a rebuild of all of the extra library object files (it will create the dependency files).  Use these commands:

rm lib/*.o
make lib
2017-06-28 05:51:46 -04:00
Greg King
bd883327ac Added two functions that make it easier to write portable programs for Ohio Scientific computers. 2017-06-26 02:34:23 -04:00
mrdudz
3ff4a1333c use BIT so akku wont get trashed at least in 40 cols mode 2017-06-22 00:19:39 +02:00
mrdudz
49aad01bf1 dont trash akku if possible, use VDC register when in 80column mode 2017-06-21 23:18:00 +02:00
mrdudz
035621aa95 fixed code a bit so it compiles again :) 2017-06-17 02:26:54 +02:00
Greg King
30f941ba39 Added a missing label to some conio cursor movement functions.
It had prevented other functions, e.g. cputs(), from being linked into a program.
2017-06-15 16:44:46 -04:00
Lauri Kasanen
4235e569d2 Small lz4 optimizations 2017-06-09 16:57:47 +03:00
Lauri Kasanen
c444ed5e4f Mention the optimizations in a comment 2017-06-09 10:42:24 +03:00
Lauri Kasanen
bba961e54d Use hex immediates 2017-06-09 10:40:17 +03:00
Lauri Kasanen
cd460a8160 Remove _ from internal vars 2017-06-09 10:37:50 +03:00
Lauri Kasanen
ee49ecdf43 Expand tabs to spaces in lz4.s 2017-06-06 19:31:16 +03:00
Lauri Kasanen
e75a59d7a8 Add LZ4 decompression support 2017-06-06 18:48:25 +03:00
Oliver Schmidt
035baa49bd Merge pull request #438 from bbbradsmith/ca65_rand_comment
rand.s comment update
2017-05-26 15:16:42 +02:00
Brad Smith
950d65e8ed detectabl > detectable 2017-05-25 03:20:11 -04:00
Brad Smith
1602aab6e9 forgot to update comments from earlier #323 rand.s change 2017-05-25 03:01:25 -04:00
Stefan
75028e4108 shorter code 2017-05-18 23:58:10 +02:00
Lauri Kasanen
a84463a3df callptr4 2017-05-01 21:08:03 +03:00
Oliver Schmidt
e43dbe1c24 Just some white space fixes of recently contributed code. 2017-04-06 17:53:57 +02:00
Oliver Schmidt
275b27647e Removed superfluous final linefeed. 2017-04-04 15:43:56 +02:00
Oliver Schmidt
233dd5062a Merge pull request #389 from IrgendwerA8/stringimprovements
Optimization of string functions (size & speed).
2017-04-04 15:39:37 +02:00
Oliver Schmidt
5095dd72b2 Merge pull request #402 from IrgendwerA8/runtime_improvements
few 6502 and some 65SC02 runtime optimizations
2017-03-20 11:34:06 +01:00
IrgendwerA8
1abfa98290 minor style changes 2017-03-19 20:51:54 +01:00
Oliver Schmidt
2048d6cfb5 Removed top blank line. 2017-03-18 20:57:12 +01:00
Christian Groessler
a3d8829be9 Creativison changes.
This change includes some cleanups, removal of mainargs.s (game console
programs never have arguments), and a workaround for a problem I'm seeing.

The problem is that sometimes (in fact, more often than not) the clrscr()
call in testcode/lib/joy-test.c writes some garbage chars on the screen (most
often a "P"). Could be my hardware (I haven't seen it on MAME), but to
me the root cause is still unknown.
2017-03-17 21:42:51 +01:00
IrgendwerA8
0de44517ac few 6502 and some 65SC02 optimizations 2017-03-12 23:21:43 +01:00
Christian Groessler
8a81f9c0c8 Fix line endings (CRLF -> LF) on all affected files. 2017-03-10 11:21:14 +01:00
Oliver Schmidt
b332064cb5 Just some minor style fix. 2017-03-09 14:39:08 +01:00
Christian Groessler
64c4cef901 Implement diagonal direction handling in creativision joystick driver. 2017-03-08 13:19:53 +01:00
IrgendwerA8
8d1b80e6fd Fixed CPU-flag usage which fails on build server?! 2017-03-05 11:38:55 +01:00
IrgendwerA8
81115aa826 Added further optimizations and unit tests. 2017-03-05 02:09:12 +01:00
Christian Groessler
9558ebf86c creativision/crt0.s: enable display interrupts in display controller configuration
Otherwise the joystick zero page locations won't get updated.
2017-03-04 10:04:32 +01:00
IrgendwerA8
3d28f5ca90 Fixed indentation 2017-02-26 22:36:19 +01:00
IrgendwerA8
c240d42a9e Added "strrchr" optimizaion a matching unit test and tiny unit test framework. (Documentation for that will follow later) 2017-02-26 20:03:05 +01:00
jede
b0e035ba2b Cleaning 2017-02-25 22:23:46 +01:00
jede
7bc3bff83f adding gotox.s gotoy.s wherex.s wherey.s 2017-02-25 22:20:17 +01:00
jede
1497330cc0 adding clrscr.s 2017-02-25 22:10:13 +01:00
jede
f6002a149c adding gotoxy.s 2017-02-25 21:32:06 +01:00
IrgendwerA8
6afcc370ed Optimization of two string functions (size & speed). 2017-02-25 20:19:50 +01:00