1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-25 02:29:52 +00:00
Commit Graph

1255 Commits

Author SHA1 Message Date
Oliver Schmidt
83768a1e8a Fixed two typos. 2018-11-13 18:33:51 +01:00
IrgendwerA8
61a9871c21 Adaptations due to code review. 2018-11-12 14:36:40 +01:00
IrgendwerA8
f86ebbd258 Support for self explanatory KBCODE values 2018-11-12 14:36:40 +01:00
jede
b0495cb44a Update doc (how telestrat works), tgi_outtext doc added 2018-11-10 14:54:43 +01:00
Oliver Schmidt
8fd1db4d78 Added basic docs on the clock_... functions. 2018-11-08 20:43:46 +01:00
Oliver Schmidt
679d0468b9 Updated URLs. 2018-11-06 11:57:57 +01:00
jede
af7b271f55 update ld65.sgml with telestrat target 2018-10-19 23:43:40 +02:00
Evgeny Vrublevsky
f73aa2af71 '--no-std-lib' was renamed to '--no-target-lib' 2018-10-19 10:57:10 +02:00
Oliver Schmidt
96196f00e9 Adjusted library name. 2018-10-18 13:22:26 +02:00
Evgeny Vrublevsky
8084702a58 Renamed to '--no-std-lib' 2018-10-18 13:08:56 +02:00
Evgeny Vrublevsky
23b5cc870e Renamed to '--no-crt-lib' 2018-10-18 13:08:56 +02:00
Evgeny Vrublevsky
2a9bb0d8de CL65: --no-rtl option for disabling default runtime library 2018-10-18 13:08:56 +02:00
Brad Smith
16aec54276 ca65.sgml fails to document z: a: f: address size override prefixes. 2018-10-18 08:12:55 +02:00
Oliver Schmidt
6cce110345 Adjusted URL to use https (and removed obsolete dates). 2018-09-20 12:45:15 +02:00
greg-king5
d8ad89c4b4
Merge pull request #740 from laubzega/master
Add segment type "overwrite".
2018-09-14 00:59:47 -04:00
Laubzega
3bace79604 Fixed reference link. 2018-09-12 23:51:38 -07:00
Laubzega
3432788763 Slight fixes to the documentation. 2018-09-11 22:14:45 -07:00
Laubzega
1646acb26f First cut of "overwrite" segment docs. 2018-09-08 19:20:01 -07:00
Oliver Schmidt
c7a40db1b7 Added hint random number generator hint. 2018-09-08 23:59:39 +02:00
Greg King
2cc822b44e Fixed some mistakes (mostly in the documentation). 2018-08-30 11:48:46 +02:00
Greg King
b5d939c858 Style changes. 2018-08-30 11:48:46 +02:00
Greg King
c39d07dd17 Document style clean-up. 2018-08-29 15:43:20 -04:00
greg-king5
a08192b53e
Merge pull request #706 from xlar54/master
* tgi driver for c128 VIC-II

* Made the VIC-IIe TGI driver put its bitmap behind the ROMs.

* c128-hi.tgi doc
2018-08-29 10:34:05 -04:00
Oliver Schmidt
f8c6c58373 Made Apple II CONIO more flexible.
Originally the Apple II had a 64 char set and used the upper two bits to control inverse and blinking. The Apple //e brought then an alternate char set without blinking but more individual chars. However, it does _not_ contain 128 chars and use the upper bit to control inverse as one would assume. Rather it contains more than 128 chars - the MouseText chars. And because Apple wanted to provide as much backward compatibility as possible with the original char set, the alternate char set has a rather weird layout for chars > 128 with the inverse lowercase chars _not_ at (normal lowercase char + 128).

So far the Apple II CONIO implementation mapped chars 128-255 to chars 0-127 (with the exception of \r and \n). It made use of alternate chars > 128 transparently for the user via reverse(1). The user didn't have direct access to the MouseText chars, they were only used interally for things like chline() and cvline().

Now the mapping of chars 128-255 to 0-127 is removed. Using chars > 128 gives the user direct access to the "raw" alternate chars > 128. This especially give the use direct access to the MouseText chars. But this clashes with the exsisting (and still desirable) revers(1) logic. Combining reverse(1) with chars > 128 just doesn't result in anything usable!

What motivated this change? When I worked on the VT100 line drawing support for Telnet65 on the Apple //e (not using CONIO at all) I finally understood how MouseText is intended to be used to draw arbitrary grids with just three chars: A special "L" type char, the underscore and a vertical bar at the left side of the char box. I notice that with those chars it is possible to follow the CONIO approach to boxes and grids: Combining chline()/cvline() with special CH_... char constants for edges and intersections.

But in order to actually do so I needed to be able to define CH_... constants that when fed into the ordinary cputc() pipeline end up as MouseText chars. The obvious approach was to allow chars > 128 to directly access MouseText chars :-)

Now that the native CONIO box/grid approach works I deleted the Apple //e proprietary textframe() function that I added as replacement quite some years ago.

Again: Please note that chline()/cvline() and the CH... constants don't work with reverse(1)!
2018-08-20 00:30:17 +02:00
Oliver Schmidt
842c151edd Replaced _systime with clock_gettime.
We want to add the capability to not only get the time but also set the time, but there's no "setter" for the "getter" time().

The first ones that come into mind are gettimeofday() and settimeofday(). However, they take a struct timezone argument that doesn't make sense - even the man pages says "The use of the timezone structure is obsolete; the tz argument should normally be specified as NULL." And POSIX says "Applications should use the clock_gettime() function instead of the obsolescent gettimeofday() function."

The ...timeofday() functions work with microseconds while the clock_...time() functions work with nanoseconds. Given that we expect our targets to support only 1/10 of seconds the microseconds look preferable at first sight. However, already microseconds require the cc65 data type 'long' so it's not such a relevant difference to nanoseconds. Additionally clock_getres() seems useful.

In order to avoid code duplication clock_gettime() takes over the role of the actual time getter from _systime(). So time() now calls clock_gettime() instead of _systime().

For some reason beyond my understanding _systime() was mentioned in time.h. _systime() worked exactly like e.g. _sysremove() and those _sys...() functions are all considered internal. The only reason I could see would be a performance gain of bypassing the time() wrapper. However, all known _systime() implementations internally called mktime(). And mktime() is implemented in C using an iterative algorithm so I really can't see what would be left to gain here. From that perspective I decided to just remove _systime().
2018-08-15 16:06:44 +02:00
Stefan
3e8c6bf4bd
c128-hi.tgi doc 2018-07-30 15:33:52 +00:00
AIDA Shinra
fd67284b4d Followed the discussions in the Pull request #682.
* Fixed a misspelling
* Fixed styles
* Added sample codes
2018-06-14 02:02:16 +09:00
AIDA Shinra
2b25329423 Support for preprocessing info file via cpp or m4. 2018-06-14 02:02:16 +09:00
AIDA Shinra
a3ab3cb458 Changed the wording of the doc/da65.sgml. 2018-06-13 01:23:01 +09:00
AIDA Shinra
03bb2f6a48 Followed discussions in the Pull reequest #681.
In particular, renamed "virtual operands" to "inline parameters".
2018-06-12 00:18:11 +09:00
AIDA Shinra
9283e9ca98 Support for "virtual operands" of subroutines like this:
jsr	SomeProc
.byte	$00, $01 ; argument to SomeProc
; return here from SomeProc
bit	$3F
2018-06-10 18:09:11 +09:00
Greg King
6d87370881 Fixed strpbrk().
Added its prototype.  Documented it.
2018-05-29 14:29:50 -04:00
Bas Wassink
b98517f90b Add __fastcall__ to cbm_k_second() documentation 2018-05-25 13:17:12 +02:00
compyx
8ffe623e74 Add CBM kernal call SECOND to CBM library (see issue #525) 2018-05-23 17:32:02 +02:00
Oliver Schmidt
4459b8973b
Merge pull request #659 from polluks/patch-10
Fixed typos and added references for #655
2018-05-23 15:51:25 +02:00
Oliver Schmidt
b6b11e3b43
Merge pull request #660 from polluks/patch-11
More references
2018-05-23 15:48:43 +02:00
Stefan
d28fce082d
Update funcref.sgml 2018-05-23 13:40:14 +00:00
Stefan
21a69c8aff
Update tgi.sgml 2018-05-23 13:34:37 +00:00
Stefan
714a347dc9
Update funcref.sgml 2018-05-23 13:32:17 +00:00
Stefan
0a1e68d7a9
Update funcref.sgml 2018-05-23 13:30:57 +00:00
Stefan
1dcd4a19ea
More references 2018-05-23 04:51:32 +00:00
Stefan
9e4833e21f
Added documentation of cbm_k_untlk 2018-05-23 04:27:05 +00:00
Stefan
37e6b05b4a
Fixed typos and added references for #655 2018-05-23 01:51:54 +00:00
compyx
e3a8cfcdb0 cbm_k_tksa() from the PET docs 2018-05-22 18:48:43 +02:00
compyx
30ada49458 Add CBM kernal call TKSA to CBM library
This adds the CBM kernal call TKSA as cbm_k_tksa() to the CBM library.
2018-05-22 14:16:00 +02:00
Stefan
b3358c462e
Update c64.sgml
Do not use last page!
2018-05-14 23:10:34 +00:00
Stefan
df79409f76
Update c64.sgml
soft80 is NMI ready
2018-05-14 14:17:09 +00:00
Marco van den Heuvel
04675fca2a Order fix. 2018-05-02 11:23:43 -07:00
Marco van den Heuvel
b1c3daca3a Fixed the order of some functions. 2018-05-01 14:45:51 -07:00
Marco van den Heuvel
b12678e90d Fixed a typo. 2018-04-30 14:34:46 -07:00
Marco van den Heuvel
ad7b339c44 Added C64 Turbo Master accelerator code and documentation. 2018-04-30 14:30:35 -07:00
Marco van den Heuvel
11629bcf99 Added C65/C64DX accelerator code and documentation. 2018-04-27 14:22:41 -07:00
Marco van den Heuvel
f2e46f0fdf Added C64 Chameleon accelerator code and documentation. 2018-04-25 12:53:29 -07:00
Oliver Schmidt
fc61bc79c5
Merge pull request #629 from blackystardust/master
Added C128 accelerator code and documentation for both C128 mode and C128 in C64 mode.
2018-04-25 15:08:11 +02:00
Marco van den Heuvel
cc2bcb8a4d Changed c128 accelerator code and documention to include both C64 and C128 support. 2018-04-23 19:25:11 -07:00
Marco van den Heuvel
28f26991ac Updated c128 accelerator code and documentation. 2018-04-21 09:52:50 -07:00
Greg King
30aed2330d Updated a joystick adapter URL. 2018-04-21 04:30:56 -04:00
Marco van den Heuvel
3f5683b391 Added C128 in C64 mode accelerator code and documentation. 2018-04-20 12:08:28 -07:00
Marco van den Heuvel
c5f15fa1d5 Fixed some comment and documentation errors. 2018-04-15 11:55:58 -07:00
Marco van den Heuvel
6076316f38 Added c64dtv accelerator code and documentation. 2018-04-14 10:40:13 -07:00
Marco van den Heuvel
89c3ed6d7f Added C64/C128 SuperCPU accelerator functions and started on a generic framework for accelerators. 2018-04-09 19:36:53 -07:00
Marco van den Heuvel
03ba3f7473 Added c16/plus4 fast(), isfast() and slow() functions, and updated the documentation accordingly. 2018-03-23 14:27:15 -07:00
Marco van den Heuvel
5d4116f05f Added isfast function which returns a 1 when the C128 is in 2MHz mode. 2018-03-20 13:11:24 -07:00
Marco van den Heuvel
2533cc8d75 Added the vic20 georam emd. 2018-03-19 11:34:41 -07:00
Marco van den Heuvel
4fdc2d7209 Fix documentation building issue. 2018-03-18 12:06:43 -07:00
Marco van den Heuvel
12f72a5ed7 Added vic20 emd documentation. 2018-03-17 09:25:42 -07:00
Bob Andrews
7e6942953c
Merge pull request #604 from blackystardust/master
Improved reu size detection.
2018-03-08 19:19:35 +01:00
Oliver Schmidt
8e75906737 Switched Apple II output format to AppleSingle.
Although the primary target OS for the Apple II for sure isn't DOS 3.3 but ProDOS 8 the Apple II binary files contained a DOS 3.3 4-byte header. Recently I was made aware of the AppleSingle file format. That format is a much better way to transport Apple II meta data from the cc65 toolchain to the ProDOS 8 file system. Therefore I asked AppleCommander to support the AppleSingle file format. Now that there's an AppleCommander BETA with AppleSingle support it's the right time for this change.

I bumped version to 2.17 because of this from the perspective of Apple II users of course incompatible change.
2018-03-07 23:05:21 +01:00
Marco van den Heuvel
74117bbe46 Merge remote-tracking branch 'upstream/master' 2018-03-06 18:00:57 -08:00
Marco van den Heuvel
2418c0e0af Updated documentation for the reu emd. 2018-03-06 18:00:36 -08:00
Oliver Schmidt
223750cde9 CC65_HOME is gone for quite some time by now. 2018-03-06 20:43:08 +01:00
Marco van den Heuvel
24cfcfdd4f Merge remote-tracking branch 'upstream/master' 2018-03-02 14:09:22 -08:00
Oliver Schmidt
57abfcd581 Joystick drivers don't depend on interrupts anymore. 2018-03-02 22:17:49 +01:00
Marco van den Heuvel
5a9d908007 Added 2a03/2a07 and HuC6280 detection. 2018-03-01 14:57:42 -08:00
Marco van den Heuvel
c7764cfe50 Merge remote-tracking branch 'upstream/master' 2018-03-01 09:32:38 -08:00
Marco van den Heuvel
102d486207 Updated getcpu() function documentation. 2018-03-01 08:55:29 -08:00
Stefan
85467231ab
Update
More conio targets
2018-02-28 00:24:28 +00:00
Stefan
924364d73d
Small typo 2018-02-25 22:38:58 +00:00
Greg King
3a0506ccb3 Changed the PC-Engine's configuration file, so that the command line can build 8K, 16K, and 32K carts.
Adjusted the PCE's document, the start-up code, and the PCE library test makefile.  That makefile shows how to post-process the linker's output file.
2018-02-23 16:06:49 -05:00
Oliver Schmidt
83890e56eb
Update dio.sgml 2018-02-22 13:30:50 +01:00
Oliver Schmidt
4f3b47c3d7
Merge pull request #588 from polluks/master
Cleanup notes
2018-02-10 00:35:14 +00:00
Stefan
89799cd02e More notes 2018-02-10 00:08:28 +01:00
Stefan
46bdc016db Removed empty notes 2018-02-07 18:08:40 +01:00
Stefan
54f8dea29b Added note 2018-02-07 17:23:23 +01:00
Oliver Schmidt
af8a995116
Merge pull request #587 from polluks/master
Added missing documentation of header
2018-02-07 15:45:36 +00:00
Stefan
4d7098f2f2 Requested changes 2018-02-07 16:23:49 +01:00
Stefan
b69ee802fd Sorted 2018-02-07 03:07:30 +01:00
Stefan
a48f998162 Added missing function 2018-02-07 01:55:56 +01:00
Stefan
a227089ba1 Added missing documentation of header 2018-02-07 00:11:55 +01:00
Oliver Schmidt
ef5461a32c Mention the recently added linker configs. 2018-02-01 00:18:07 +01:00
Oliver Schmidt
58bfe28244 Updated AppleCommander URL. 2018-01-31 23:52:08 +01:00
Oliver Schmidt
fb193933cb
Merge pull request #552 from polluks/master
Added Oric-1 compatibility #550
2017-12-16 18:26:34 +00:00
Stefan
6faef87b49 Fixed Oric-1 compatibility #550 2017-12-15 23:51:39 +01:00
mrdudz
8902730756 cbm stuff from greggs pull request 2017-12-11 19:52:11 +01:00
Greg King
ad9b7c0bfa Fixed the sort order of the function descriptions in the TGI document. 2017-11-30 11:56:38 -05:00
Greg King
a029c00660 Fixed a Table-Of-Contents bug in the TGI document.
The <toc> tag can't be put inside of a section.  It isn't needed, anyway; we can get a TOC by putting the header as a section, and the functions as subsections.
2017-11-30 11:38:12 -05:00
Oliver Schmidt
7e834a47b0
Merge pull request #533 from polluks/master
Splitting of funcref
2017-11-26 20:16:29 +00:00
Stefan
fa9a1cf2dc
Update tgi.sgml
Added missing ref.
2017-11-25 23:32:52 +01:00
Stefan
9725c44934
Update tgi.sgml
I should take more attention of Travis.
2017-11-25 23:09:19 +01:00
Stefan
aa30f50fbe
Update tgi.sgml
Fixed toc.
2017-11-25 22:39:41 +01:00
Stefan
41df21855a Splitting of funcref 2017-11-25 19:31:36 +01:00
Stefan
61b2264327
Fix docs for #526
funcref.sgml is still growing and growing, how about outsourcing all TGI functions into tgi.sgml?
2017-11-22 01:35:42 +01:00
Stefan
40f960f733
Date 2017-11-21 09:59:31 +01:00
Stefan
e9c16e62e7
Fix docs for #453 2017-11-21 09:51:35 +01:00
Christian Groessler
9ead405938 Creativision documentation enhancements. 2017-11-15 00:13:06 +01:00
Oliver Schmidt
258cdf2e07
Merge pull request #521 from jedeoric/master
Fix cc65 doc for Telestrat target
2017-11-12 10:02:56 +00:00
jede
3c97a04b25 Fix cc65 doc for telestrat target 2017-11-12 10:42:09 +01:00
Oliver Schmidt
0f87844a7c
Merge pull request #519 from jedeoric/master
[Telestrat] mkdir is now available
2017-11-11 21:09:59 +00:00
jede
64ed0a1937 Doc modified 2017-11-10 10:58:01 +01:00
Stefan
e64c42f224
Update atmos.sgml 2017-11-03 20:49:49 +01:00
jede
eae485dc64 Empty item removed 2017-10-28 00:40:56 +02:00
jede
7435c2f3ca Fix doc/telestrat.sgml 2017-10-26 22:00:12 +02:00
jedeoric
af1c7f0c8b Merge branch 'master' into master 2017-10-22 23:11:18 +02:00
jede
93f202850a toascii.s added, doc updated, tgi_line & tgi_outtext are available 2017-10-22 23:06:56 +02:00
Greg King
bea5364b97 Added commit ca4ed290d5964dbe833224d967d3707e20972278's command-line option to the cl65 document. 2017-10-16 09:39:33 -04:00
Stefan
945dcfd63a Fixed address
See cbm510.cfg
2017-09-13 23:51:07 +02:00
Greg King
3c0b8c4e86 Made the CBM Pet kbrepeat() work on both 40-column and 80-column machines.
Put the kbrepeat() description in an alphabetical position in the function document.
2017-09-05 09:19:01 -04:00
Phil Smith
ded1c20190
Reserve space in examples with .res 2017-09-02 19:30:14 -07:00
Phil Smith
929553dc8d
At most 256 bytes will be reserved 2017-09-02 00:02:47 -07:00
Oliver Schmidt
4aa19494f5 Removed dysfunctional kbrepeatdelay() and kbrepeatrate().
As discussed in https://github.com/cc65/cc65/pull/452 after my premature merge the two functions in question don't work as expected.

Additionally I adjusted several style deviations in the pull request in question.
2017-08-30 16:37:59 +02:00
mrdudz
3c3558892e add note on fastcall 2017-08-19 19:16:31 +02:00
Bob Andrews
5dcebbccb6 Merge branch 'master' into kbrepeat 2017-08-06 20:22:52 +02:00
mrdudz
dafe3c1e3c added documentation for the kbrepeat... functions 2017-08-06 20:15:35 +02:00
Oliver Schmidt
92ff854bff Removed undesirable empty lines. 2017-07-31 13:50:27 +02:00
Bill Chatfield
0bd5a8a331 Made corrections according to review comments 2017-07-30 19:51:23 -04:00
Bill Chatfield
85e572f4e1 Made corrections according to review comments 2017-07-30 19:49:20 -04:00
Bill Chatfield
9d89613bb2 Added documentation for setting the file type for fopen. 2017-07-29 01:25:07 -04:00
Bill Chatfield
2c7b757b4c Documented _filetype and _auxtype 2017-07-28 17:44:13 -04:00
Oliver Schmidt
5d333239c6 Merge pull request #468 from pmjdebruijn/samples
make changes
2017-07-23 02:09:20 +02:00
Pascal de Bruijn
19f6ae1d54 make: change uppercase prefix var 2017-07-22 16:38:50 +02:00
Pascal de Bruijn
80b27bde5e pragma: add minimalist message pragma documentation
documents 6e93c1ba73
2017-07-22 15:35:24 +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
cbdad764f0 oops 2017-07-18 00:01:15 +02:00
mrdudz
d965601a5e fix sgml 2017-07-17 23:31:01 +02:00
mrdudz
1abce3a2a1 rename all waitvblank() to waitvsync() 2017-07-17 23:15:05 +02:00
Oliver Schmidt
6de78c536f Made DOS 3.3 IRQ statement more general.
I recently came across that the question if a driver is compatible with DOS 3.3 isn't about the fact if it actually uses IRQs but if it potentially could use IRQs as the driver kernel pulls in the IRQ handler anyway. This is especially suboptimal in the scenario of statically linked drivers where it is concpetually totally clear at link time they use IRQs or not. Apart from that it might make sense to be able to define on a per-target basis if _any_ of the drivers of a certain class uses IRQs. If that isn't the cases the driver kernel for that driver class for that target could omit IRQ handling too. I'm aware that Uz imagined drivers being loaded which weren't known when the program was linked - but I don't see this.
2017-06-30 09:50:28 +02:00
Lauri Kasanen
135041ac3c Add lz4 doc 2017-06-09 10:54:50 +03:00
Oliver Schmidt
b8f30ba0de Merge pull request #436 from bbbradsmith/ca65_define_macro_doc
Small improvement to ca65 macro documentation
2017-06-05 15:03:37 +02:00
Stefan
52642f6c8f Deprecated commands mentioned 2017-05-30 02:05:35 +02:00
Stefan
0a011c31ea Update ar65.sgml 2017-05-28 16:22:34 +02:00
Stefan
ed65eaf682 Verbosity was missing; POSIX operations 2017-05-28 16:12:02 +02:00
Oliver Schmidt
c269caaded Merge pull request #441 from polluks/patch-3
Small typo
2017-05-26 11:03:57 +02:00
Oliver Schmidt
8f9c7f0d60 Merge pull request #440 from polluks/patch-5
Also Oricutron mentioned
2017-05-26 11:03:06 +02:00
Oliver Schmidt
162d01519b Merge pull request #439 from polluks/patch-4
Some clean-up
2017-05-26 11:02:02 +02:00
Stefan
3b33af88cf Oricutron mentioned 2017-05-26 01:44:33 +02:00
Greg King
ca1b9deb59 Added a description of the "-E" command-line option to cl65's document.
Improved other descriptions, to make them more consistent and accurate.
2017-05-24 16:47:12 -04:00
Stefan
87a9e0ce4f clean-up 2017-05-24 00:04:52 +02:00
Brad Smith
051cf11ce6 expanding macro examples, trying to adhere to style guidelines 2017-05-23 17:07:45 -04:00
Brad Smith
355696d17d ca65 documentation of .define macros, making note that parentheses in ca65 macros are problematic especially when thinking of them as "C style", replacing unclear example with an example showing how accidental parentheses can cause a problem. 2017-05-22 21:33:02 -04:00
Stefan
d9a8c30053 typo 2017-05-22 23:53:51 +02:00
Greg King
39e55bdb77 Added more info to the documentation of "#pragma wrapped-call". 2017-05-20 01:41:49 -04:00
Oliver Schmidt
0d4edc326e Merge pull request #430 from polluks/patch-1
VIC's kernal does not support CTRL+[
2017-05-18 22:45:50 +02:00
Stefan
70b541b81e Changed section 2017-05-18 21:21:02 +02:00
Lauri Kasanen
4c05c46cd1 Remove RAM-trampoline array support 2017-05-18 16:11:39 +03:00
Stefan
c6cab0bb27 VIC's kernal does not support CTRL+[ 2017-05-18 12:59:03 +02:00
Lauri Kasanen
ac7a0e21ac Correct missed doc label 2017-05-16 20:14:19 +03:00
Lauri Kasanen
ca41af41c2 Rename pragma trampoline to wrapped-call, value to identifier 2017-05-16 20:10:24 +03:00
Lauri Kasanen
82e62209d6 Document pragma trampoline 2017-05-01 21:08:03 +03:00
Oliver Schmidt
4e856546c1 Minor language update. 2017-04-04 13:42:57 +02:00
Greg King
3b17c3a411 Fixed 2 typoes.
Warning messages from nsgmls usually mean a typing mistake a few lines above the first line that's named by nsgmls.
2017-04-04 07:23:05 -04:00
Oliver Schmidt
9b34509956 Use the more explicit tag style for recently added internal links. 2017-04-04 00:41:40 +02:00
Oliver Schmidt
02daf9f8b5 So far the built-in inlining of several known standard function was always (!) enabled and the option -Os enabled additional, potentially unsafe inlining of some of those functions.
There were two aspects of this behavior that were considered undesirable:
- Although the safe inlining is in general desirable it should only be enabled if asked for it - like any other optimization.
- The option name -Os implies that it is a safe option, the potentially unsafe inlining should have a more explicit name.

So now:
- The option -Os enables the safe inlining.
- The new option --eagerly-inline-funcs enables the potentially unsafe inlining (including the safe inlining).

Additionally was added:
- The option --inline-stdfuncs that does like -Os enable the safe inlining but doesn't enable optimizations.
- The pragma inline-stdfuncs that works identical to --inline-stdfuncs.
- The pragma allow-eager-inline that enables the potentially unsafe inlining but doesn't include the safe inlining. That means that by itself it only marks code as safe for potentially unsafe inlining but doesn't actually enable any inlining.
2017-04-03 23:20:26 +02:00
Greg King
01f5baf03d Fixed SGML typo. 2017-03-21 21:23:48 -04:00
Greg King
750a527100 Made C's sizeof operator work with initialized void variables.
Added regression tests that check cc65's handling of void variables.
2017-03-12 14:41:32 -04:00
jede
4f1d007fb4 Correcting typo 2017-02-25 21:32:42 +01:00
Irgendwer
f55d334435 Update atari.sgml 2017-02-24 11:19:33 +01:00
IrgendwerA8
ae7fa8f2ea Improved display list instruction definition for more comfortable use within void data definition. 2017-02-24 00:10:02 +01:00
Greg King
39d655278d Added "telestrat.html" to index. Sorted "gamate.html". 2017-02-15 16:10:16 -05:00
Christian Groessler
b858b0d623 Add joystick driver to documentation. 2017-02-15 15:37:06 +01:00
Christian Groessler
a5fba551d1 Merge remote-tracking branch 'upstream/master' into something_to_pull2 2017-02-13 21:38:38 +01:00
Oliver Schmidt
5bbf010029 Merge pull request #371 from jedeoric/master
Create an Oric Telestrat target library
2017-02-10 23:47:13 +01:00
jede
9cde534b23 Rollback for *.vcxproj, telestrat.sgml modified for "don't" instead of "did not" for telemon2.4 2017-02-09 18:46:56 +01:00
Christian Groessler
c33383e6de Add Creativision to README.md and html index 2017-02-06 21:06:08 +01:00
Christian Groessler
e6359ec019 Add initial creativision.sgml, contributed by Stefan Haubenthal. 2017-02-06 20:59:52 +01:00
jede
ad6e54c2d8 Updating doc 2017-02-02 22:44:06 +01:00
jede
bbff709d9f Correcting return line 2017-02-02 00:00:21 +01:00
jede
0e649f24ea Correcting some code from github comments 2017-02-01 23:58:33 +01:00
jede
b5fef66f37 Merge telemon24 and telemon30 into telestrat target.
Cleaning, and replace tab to spaces
Converting hex lowercase value into uppercase char.
Changing := and = when it was needed
2017-01-31 22:09:14 +01:00
jede
038ac5a65a Correcting doc adding telemon 2.4 primitives 2017-01-22 21:41:49 +01:00
Oliver Schmidt
69c293919a Fixed typo. 2017-01-22 12:04:21 +01:00
Greg King
54ff808c2c Added a way to show the default mouse pointer on C64 TGI (graphics) screens. 2017-01-18 16:05:47 -05:00
Florent Flament
2a81eaa06e Add Atari 2600 documentation 2017-01-15 20:53:34 +01:00
Kyle Swanson
1b4a7e37ce doc/ca65: fix typo 2016-12-27 11:46:12 -06:00
greg-king5
23cfb51e72 Shorten a URL. 2016-09-29 20:00:09 -04:00
Oliver Schmidt
4ea6e38c20 Merge pull request #353 from SvOlli/da65
da65: adding support for 4510 cpu of c65
2016-09-27 14:56:28 +02:00
Sven Oliver Moll
476260a6fa 4510 support for da65: fixed docs and Makefile for testcase. 2016-09-27 12:02:57 +02:00
Jakob Haufe
86fc0240a9
Add missing tag and remove duplicate text 2016-09-23 10:50:46 +02:00
Sven Oliver Moll
d0ed84c2d0 da65: adding support for 4510 cpu of c65 2016-09-20 17:37:10 +02:00
Sven Oliver Moll
0949b2e104 added missing ',' in documentation. 2016-09-12 18:38:10 +02:00
Sven Oliver Moll
ae3f9bbd77 Added assembler pseudo commands .P4510 and .IFP4510 together with docs and testcase 2016-09-07 19:21:24 +02:00
Christian Groessler
3531bcbf3e Fix some typos. 2016-09-06 15:13:44 +02:00
Oliver Schmidt
9c38521ea8 Merge pull request #343 from SvOlli/release
Add 4510 support for C65/C64DX
2016-08-31 22:05:49 +02:00
Sven Oliver Moll
4384603eeb 4510 support: added some other small improvements:
- fixed typo in doc/ca65.sgml
- Greg found a way to get rid of one extra opcode handling in total
2016-08-30 22:58:40 +02:00
Sven Oliver Moll
91f8e09bcc 4510 support: fixed some cosmetical stuff and documentation 2016-08-29 23:29:31 +02:00
Sven Oliver Moll
0538184699 Add 4510 support for C65/C64DX 2016-08-29 10:45:18 +02:00
Oliver Schmidt
1e7a992663 Merge pull request #338 from IrgendwerA8/master
Allow use of different charmaps on Atari target
2016-08-28 11:22:44 +02:00
IrgendwerA8
d65f587f69 Internal/screen character mapping: Supressed warnings for re-map and added documentation. 2016-08-27 22:02:08 +02:00
Oliver Schmidt
2f6fb1de1c Added -Wc to the (pseudo) output dump. 2016-08-26 11:06:58 +02:00
Greg King
2c03b9a1bc Added C-code interfaces for the CBM Kernal functions SCNKEY and UDTIM. 2016-08-07 15:50:10 -04:00
Christian Groessler
97b517a892 sim65: add command line parameter to print number of CPU cycles at exit 2016-07-05 17:07:39 +02:00
Oliver Schmidt
c9e9679a06 Improved doc and samples default target.
The 'all' target deliberately doesn't build the doc nor the samples. But that doesn't mean that the Makefiles in the 'doc' and 'samples' directories must default to the (empty) 'all' target.
2016-06-19 18:55:00 +02:00
Oliver Schmidt
e47485f925 Added CONIO cursor support.
For quite some time I deliberately didn't add cursor support to the Apple II CONIO imöplementation. I consider it inappropriate to increase the size of cgetc() unduly for a rather seldom used feature.

There's no hardware cursor on the Apple II so displaying a cursor during keyboard input means reading the character stored at the cursor location, writing the cursor character, reading the keyboard and finally writing back the character read initially.

The naive approach is to reuse the part of cputc() that determines the memory location of the character at the cursor position in order to read the character stored there. However that means to add at least one additional JSR / RTS pair to cputc() adding 4 bytes and 12 cycles :-( Apart from that this approach means still a "too" large cgetc().

The approach implemented instead is to include all functionality required by cgetc() into cputc() - which is to read the current character before writing a new one. This may seem surprising at first glance but an LDA(),Y / TAX sequence adds only 3 bytes and 7 cycles so it cheaper than the JSR / RTS pair and allows to brings down the code increase in cgetc() down to a reasonable value.

However so far the internal cputc() code in question saved the X register. Now it uses the X register to return the old character present before writing the new character for cgetc(). This requires some rather small adjustments in other functions using that internal cputc() code.
2016-06-19 15:03:20 +02:00
Greg King
573381a340 Allowed character code zero to be remapped with other character codes. 2016-06-11 06:43:19 -04:00
Greg King
0835985999 Updated the function reference document.
* Added doesclrscrafterexit() to cc65.h's list.
* Added header-file function lists for some new target platforms.
2016-06-08 21:05:56 -04:00
Christian Groessler
308767cbae fix wrong header reference in doesclrscrafterexit() description 2016-06-07 12:22:25 +02:00
Christian Groessler
346d88a6a7 Add issues from pull request #307. 2016-06-07 12:07:38 +02:00
Christian Groessler
c7874b9f60 Add Atari version of of doesclrscrafterexit().
- Update documentation.
- Update atari.h and apple2.h header files.
- Adapt Atari test/target programs.
- Fix a typo in "div" entry in funcref.sgml.
2016-06-07 00:42:51 +02:00
Oliver Schmidt
02b8469875 Added full stop. 2016-06-03 21:21:22 +02:00
Oliver Schmidt
8dd003d2b3 Added --print-target-path option.
If cc65 is installed and used as designed there's no need whatsoever for CC65_HOME (both on *IX and Windows) from the perspective of the cc65 binaries. If the user however has to access files from the 'target' directory thenhe ends up with some assumption on the cc65 installation path nevertheless :-(

In order to avoid this I added the --print-target-path option. It "exports" the logic used by the cc65 binaries to locate their files to the user thus allowing him to leverage the same logic to locate the target files in his build scripts / Makefiles.
2016-06-03 11:08:53 +02:00
Oliver Schmidt
89329f1519 Merge pull request #287 from silverdr/target_goodies
moved output of target utils and drivers to separate directory
2016-06-01 11:01:56 +02:00
Patrycjusz R. Łogiewa
ac5bb6707d Post-review changes 2016-05-29 16:19:03 +02:00
Christian Groessler
da65866e24 Atari: add new function '_is_cmdline_dos()' and some other small changes.
- use this function instead of directly looking at _dos_type in the included
  targetutil and test programs
- fixes/improvements to the Atari runtime library regarding the recently
  changed _dos_type values
- libsrc/atari/targetutil/w2cas.c: exit if no filename was entered
- add documentation for the new function
2016-05-25 00:57:43 +02:00
Patrycjusz R. Łogiewa
759f5f5f48 docs for targets with target utilities adjusted 2016-05-18 16:42:51 +02:00
Patrycjusz R. Łogiewa
93f55c274b moved output of target utils and drivers to separate directory 2016-05-13 14:28:58 +02:00
Greg King
2c7ccca210 Added the optional C keyword "volatile" to the __asm__ statement grammar.
It prevents the statement's Assembly code from being optimized (e.g., moved or removed).  Optimization is disabled for that statement's entire function (other functions aren't affected).
2016-04-22 11:33:52 -04:00
Oliver Schmidt
e809d6bf0d Merge pull request #281 from polluks/sp65
sp65: A forgotten option. Empty arguments are not silent anymore.
2016-04-10 21:13:02 +02:00
KORISNIK
7f06405bdb A forgotten option. Empty arguments are not silent anymore. 2016-04-10 02:21:36 +02:00
Oliver Schmidt
8b685763d4 Renamed chrcvt to chrcvt65 and added it to the build.
The /Makefile presumes that all binaries are are named *65 so chrcvt had to be renamed in order to be added to the build.
2016-03-27 19:09:00 +02:00
Oliver Schmidt
d2f012e414 Updated Protovision Shop URL. 2016-03-27 18:50:54 +02:00
Oliver Schmidt
e2419ece0b Added scrcode macro for the Apple II.
Although the Apple II generally works with plain ASCII (i.e. in the ProDOS 8 MLI) the actual screen codes differ. This fixes #260.
2016-03-27 18:26:46 +02:00
Oliver Schmidt
c9734004ee Minor fixes for recent doc change. 2016-03-25 19:03:12 +01:00
Oliver Schmidt
9aac382afb Updated documentation to reflect the current linker configs. 2016-03-25 18:48:23 +01:00
Oliver Schmidt
aac0b1cbbb Merge pull request #274 from bbbradsmith/doc-cc65-intern
New documentation: cc65-intern.sgml
2016-03-08 21:50:18 +01:00
Oliver Schmidt
d8c31cf1d3 Renamed RAM to MAIN for all disk based targets.
The name RAM doesn't make much sense in general for a memeory area because i.e. the zero page is for sure RAM but is not part of the memory area named RAM.

For disk based targets it makes sense to put the disk file more into focus and here MAIN means the main part of the file - in contrast to some header.

Only for ROM based targets the name RAM is kept as it makes sense to focus on the difference between RAM and ROM.
2016-03-07 01:28:55 +01:00
Oliver Schmidt
419eb700b5 Renamed INITBSS to INIT and INIT to ONCE.
The way we want to use the INITBSS segment - and especially the fact that it won't have the type bss on all ROM based targets - means that the name INITBSS is misleading. After all INIT is the best name from my perspective as it serves several purposes and therefore needs a rather generic name.

Unfortunately this means that the current INIT segment needs to be renamed too. Looking for a short (ideally 4 letter) name I came up with ONCE as it contains all code (and data) accessed only once during initialization.
2016-03-06 21:27:19 +01:00
Oliver Schmidt
ab1600b346 Merge pull request #269 from jbrandwood/squarebracket
New ".feature" to use brackets instead of parens for 6502 indirect addressing.
2016-03-03 09:07:21 +01:00
Brad Smith
97e6a8c569 cc65-intern update minor change notes from greg-king5 2016-03-02 21:01:46 -05:00
Brad Smith
fa5b0d88c5 Merge remote-tracking branch 'refs/remotes/cc65/master' into doc-cc65-intern 2016-03-02 21:01:04 -05:00
Brad Smith
85a58453cb cc65-intern adjusting mailing address 2016-03-02 02:03:23 -05:00
Brad Smith
18dec35312 cc65-intern sgml fixes 2016-03-02 01:58:44 -05:00
mrdudz
7d2969d5ac fixed copypaste errors 2016-02-28 21:39:49 +01:00
mrdudz
f328532030 updated docs with recently added extended memory drivers 2016-02-28 20:12:28 +01:00
Bob Andrews
25f4482641 Merge pull request #238 from mrdudz/gamate
Bit Corporation 'Gamate' support
2016-02-27 18:44:26 +01:00
Brad Smith
222ab93026 revise note on prototypes/K&R conventions 2016-02-26 17:33:46 -05:00
Brad Smith
fd708d30ec draft of cc65-intern document 2016-02-26 17:11:11 -05:00
John Brandwood
ef153364ea Add indirect JMP examples and fix typos in the documentation. 2016-02-26 08:10:11 -08:00
John Brandwood
d23db09f7f Add optional feature to use brackets instead of parens for 6502 indirect addressing. 2016-02-25 12:40:31 -08:00
polluks
cb3700ef66 Changed stdout to stderr to separate sim65's output streams. Suggested doc edit. 2016-01-05 17:45:18 +01:00
polluks
f69f8add17 Updated index. 2016-01-05 15:57:18 +01:00
polluks
231150bc3c Added sim65 documentation. 2016-01-05 15:45:51 +01:00
polluks
804f1fded6 Fixed typos. 2016-01-05 15:38:05 +01:00
Oliver Schmidt
02e4b5bfe3 Merge pull request #249 from polluks/master
My first PR
2015-12-27 13:40:20 +01:00
polluks
a8a6e9df5b Added chrcvt documentation 2015-12-27 02:09:12 +01:00
mrdudz
8a499fdf4e fixup conio.c some more. also includes merge of upstream/master because git is retarded. 2015-12-02 00:13:32 +01:00
mrdudz
3bc1375c90 fix typo 2015-11-29 22:00:59 +01:00
mrdudz
aff2d95cb9 fix docs 2015-11-29 21:15:28 +01:00
Greg King
3c8c62c6ab Fixed the ca65 Assembly-code variable ".paramcount".
Fixed how it's described in the ca65 document.
2015-11-17 14:21:40 -05:00
mrdudz
60285097e3 initial import of the gamate stuff 2015-11-14 13:15:29 +01:00
Oliver Schmidt
281dc33e5a Made addr/size hex consts 4 digits wide. 2015-10-30 17:19:19 +01:00
Oliver Schmidt
43bda6928d Merge pull request #221 from undisbeliever/master
Added .asize and .isize pseudo variables in ca65
2015-10-23 20:41:28 +02:00