]> git.sur5r.net Git - cc65/log
cc65
8 years agoatari.h: update _dos_type values
Christian Groessler [Tue, 24 May 2016 02:37:35 +0000 (04:37 +0200)]
atari.h: update _dos_type values

8 years agoadd support for XDOS command lines
Christian Groessler [Tue, 24 May 2016 00:57:21 +0000 (02:57 +0200)]
add support for XDOS command lines

8 years agoatari.inc: add XDOS defines and remove trailing whitespace
Christian Groessler [Mon, 23 May 2016 22:10:47 +0000 (00:10 +0200)]
atari.inc: add XDOS defines and remove trailing whitespace

8 years agoMerge pull request #289 from OzHawk/patch-1
greg-king5 [Mon, 16 May 2016 02:48:03 +0000 (22:48 -0400)]
Merge pull request #289 from OzHawk/patch-1

Update the missing entries in the kernel jump table for the Vic20 wit…

8 years agoUpdate kernal.s 289/head
OzHawk [Sun, 15 May 2016 23:11:13 +0000 (08:41 +0930)]
Update kernal.s

8 years agoUpdate the missing entries in the kernel jump table for the Vic20 with the actual...
OzHawk [Wed, 11 May 2016 09:54:16 +0000 (19:24 +0930)]
Update the missing entries in the kernel jump table for the Vic20 with the actual function addresses.

The Vic20 does not have kernal table entries for the following functions.

;-----------------------------------------------------------------------------
; Functions which are not in the kernal jump table for VIC-20 but are for C64

CINT        := $E518
IOINIT      := $FDF9
RAMTAS      := $FD8D

All other kernal entries are the same as the C64, however, without this change, the startup code fails.

Without this change the vic20.lib builds incorrectly.

8 years agoMerge pull request #285 from greg-king5/asm-volatile
Oliver Schmidt [Sun, 24 Apr 2016 19:40:46 +0000 (21:40 +0200)]
Merge pull request #285 from greg-king5/asm-volatile

Add the C keyword "volatile" to the __asm__ statement grammar.

8 years agoAdded the optional C keyword "volatile" to the __asm__ statement grammar. 285/head
Greg King [Fri, 22 Apr 2016 15:33:52 +0000 (11:33 -0400)]
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).

8 years agoMerge pull request #283 from polluks/sp65
Oliver Schmidt [Thu, 14 Apr 2016 09:28:25 +0000 (11:28 +0200)]
Merge pull request #283 from polluks/sp65

Fixed CPU definition of Lynx.

8 years agoFixed CPU definition of Lynx. Removed nonsense target vc20. 283/head
Polluks [Tue, 12 Apr 2016 21:58:30 +0000 (23:58 +0200)]
Fixed CPU definition of Lynx. Removed nonsense target vc20.

8 years agoMerge pull request #281 from polluks/sp65
Oliver Schmidt [Sun, 10 Apr 2016 19:13:02 +0000 (21:13 +0200)]
Merge pull request #281 from polluks/sp65

sp65: A forgotten option. Empty arguments are not silent anymore.

8 years agoA forgotten option. Empty arguments are not silent anymore. 281/head
KORISNIK [Sun, 10 Apr 2016 00:21:36 +0000 (02:21 +0200)]
A forgotten option. Empty arguments are not silent anymore.

8 years agoMerge pull request #280 from greg-king5/misaligned
Oliver Schmidt [Tue, 29 Mar 2016 10:19:24 +0000 (12:19 +0200)]
Merge pull request #280 from greg-king5/misaligned

Show a warning message about misaligned segments, for all badly-aligned segments.

8 years agoMoved a warning message, about misaligned segments, to a configuration function. 280/head
Greg King [Tue, 29 Mar 2016 09:40:12 +0000 (05:40 -0400)]
Moved a warning message, about misaligned segments, to a configuration function.

It used to be shown only if the segment was written into a binary file.  Now, it's shown for all badly-aligned segments.

8 years agoRenamed chrcvt to chrcvt65 and added it to the build.
Oliver Schmidt [Sun, 27 Mar 2016 17:09:00 +0000 (19:09 +0200)]
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.

8 years agoUpdated Protovision Shop URL.
Oliver Schmidt [Sun, 27 Mar 2016 16:50:54 +0000 (18:50 +0200)]
Updated Protovision Shop URL.

8 years agoUse .macpack to include macro package.
Oliver Schmidt [Sun, 27 Mar 2016 16:29:45 +0000 (18:29 +0200)]
Use .macpack to include macro package.

8 years agoMade use of recently added Apple scrcode macro.
Oliver Schmidt [Sun, 27 Mar 2016 16:27:53 +0000 (18:27 +0200)]
Made use of recently added Apple scrcode macro.

8 years agoAdded scrcode macro for the Apple II.
Oliver Schmidt [Sun, 27 Mar 2016 16:26:46 +0000 (18:26 +0200)]
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.

8 years agoMerge pull request #279 from greg-king5/atmos-reconfig
Oliver Schmidt [Sat, 26 Mar 2016 23:36:05 +0000 (00:36 +0100)]
Merge pull request #279 from greg-king5/atmos-reconfig

Convert the Atmos configuration to the new constructor segment model.

8 years agoAllow _sys() to call ROM routines.
Oliver Schmidt [Fri, 25 Mar 2016 20:57:06 +0000 (21:57 +0100)]
Allow _sys() to call ROM routines.

_sys() is supposed to be (primarily) intended to call ROM routines. Leveraging the "file overlay" mechanism of the cc65 build system allows to provide a Apple II specific _sys() implementation that temporarily switches in the ROM.

8 years agoMinor fixes for recent doc change.
Oliver Schmidt [Fri, 25 Mar 2016 18:03:12 +0000 (19:03 +0100)]
Minor fixes for recent doc change.

8 years agoUpdated documentation to reflect the current linker configs.
Oliver Schmidt [Fri, 25 Mar 2016 17:48:23 +0000 (18:48 +0100)]
Updated documentation to reflect the current linker configs.

8 years agoConverted the Atmos configuration to the new constructor segment model. 279/head
Greg King [Fri, 18 Mar 2016 15:28:56 +0000 (11:28 -0400)]
Converted the Atmos configuration to the new constructor segment model.

8 years agoHarmonized asm linker configs.
Oliver Schmidt [Thu, 17 Mar 2016 20:51:20 +0000 (21:51 +0100)]
Harmonized asm linker configs.

- All segments but CODE are optional and CODE is R/W. Both together allow to "just" write code/data without ever explicitly using a segment.

- Symbols are defined for the BSS. This allows to use/implement zerobss.

- The ZP memory area isn't artificially limited.

8 years agoConsider the segment attributes 'define' and 'optional' mutually exclusive.
Oliver Schmidt [Thu, 17 Mar 2016 20:31:43 +0000 (21:31 +0100)]
Consider the segment attributes 'define' and 'optional' mutually exclusive.

In normal situations it isn't too useful to define symbols for optional segments as those symbols can't be presumed to be always present.

I in fact suspect that most currently present combinations of 'define' and 'optional' aren't useful - apart form the overlay configurations of course.

8 years agoMoved run location of ONCE segment.
Oliver Schmidt [Thu, 17 Mar 2016 20:07:19 +0000 (21:07 +0100)]
Moved run location of ONCE segment.

Make the same changes to the Apple II that were done with https://github.com/cc65/cc65/commit/0ee9b2e446198746c3a05b142ecd00784becf727 to the C64.

Notes:
- The startup code deliberately doesn't make use of symbols defined for the LC segment as that segment is optional.
- The <...>-asm.cfg configs move the segment BSS to an own memory area BSS although this doesn't seem necessary. However the benefit is that the size of the memeory area MAIN is identical to the number of bytes loaded from disk into RAM. To keep this an invariant for all Apple II configs allows to simplify the EXEHDR to just refer to the symbols defined for MAIN.

8 years agoAdjusted constructors.
Oliver Schmidt [Wed, 16 Mar 2016 15:28:32 +0000 (16:28 +0100)]
Adjusted constructors.

The constructors are _NOT_ allowed anymore to access the BSS. Rather they must use the DATA segment or the INIT segment. The latter isn't cleared at any point so the constructors may use it to expose values to the main program. However they must make sure to always write the values as they are not pre-initialized.

8 years agoAdjust linker config to match startup code.
Oliver Schmidt [Wed, 16 Mar 2016 15:00:09 +0000 (16:00 +0100)]
Adjust linker config to match startup code.

Apply https://github.com/cc65/cc65/commit/aaf90c1252a09346deb1ccdab96546368afdbbdd to the Supervision default configuration.

8 years agoFixed segment properties.
Oliver Schmidt [Tue, 15 Mar 2016 20:48:44 +0000 (21:48 +0100)]
Fixed segment properties.

The CBMx10 targets don't use the INIT segment in the startup code. So it may turn out to be not necessary at all for certain programs.

The CBMx10 targets don't need symbols for the ONCE segment. Likely their definition was a C&P error in the first place.

8 years agoMoved things into ONCE.
Oliver Schmidt [Tue, 15 Mar 2016 20:36:38 +0000 (21:36 +0100)]
Moved things into ONCE.

Code and or data used only during initialization belongs into the ONCE segment.

8 years agoRemoved symbol definition for ONCE.
Oliver Schmidt [Tue, 15 Mar 2016 20:25:22 +0000 (21:25 +0100)]
Removed symbol definition for ONCE.

Almost all targets don't need symbols for the ONCE segment. Likely their definition was a C&P error in the first place.

8 years agoRemoved ONCE segment.
Oliver Schmidt [Tue, 15 Mar 2016 20:19:25 +0000 (21:19 +0100)]
Removed ONCE segment.

Pure assembler programs don't have constructors. Therefore constructor code ending up in an assembler program should trigger an error.

8 years agoFixed INIT properties.
Oliver Schmidt [Sun, 13 Mar 2016 21:18:51 +0000 (22:18 +0100)]
Fixed INIT properties.

The main chunk load header references __BSS_LOAD__ so BSS must be the first bss type segment. Subsequent changes will move ONCE to share its address with the BSS. Then it'll be necessary to load INIT from disk. Therefore we do it right now.

8 years agoFixed BSS properties.
Oliver Schmidt [Sun, 13 Mar 2016 21:13:41 +0000 (22:13 +0100)]
Fixed BSS properties.

The cassette boot file header references __BSS_RUN__ so BSS must be the first bss type segment (and for sure isn't optional).

8 years agoUse AX paradigm.
Oliver Schmidt [Sun, 13 Mar 2016 20:23:45 +0000 (21:23 +0100)]
Use AX paradigm.

8 years agoCleaned up C64 linker configs.
Oliver Schmidt [Sun, 13 Mar 2016 13:32:07 +0000 (14:32 +0100)]
Cleaned up C64 linker configs.

The BSS segment and the ONCE segment share the same start address. So they need to be placed in two different memory areas.

So far BSS was placed in the MAIN memory area and ONCE was placed in an additional memory area. Both memory areas were written to the output file. They just "happened" to be loadable and runnable at a stretch.

Now ONCE is placed in the MAIN memory area and BSS is placed in an additional memory area. Only MAIN is written to the output file. It becomes more obvious that BSS is "just" defined to share memory with ONCE.

8 years agoDon't presume the stack size to be a multiple of pages.
Oliver Schmidt [Thu, 10 Mar 2016 09:07:09 +0000 (10:07 +0100)]
Don't presume the stack size to be a multiple of pages.

8 years agoMerge pull request #274 from bbbradsmith/doc-cc65-intern
Oliver Schmidt [Tue, 8 Mar 2016 20:50:18 +0000 (21:50 +0100)]
Merge pull request #274 from bbbradsmith/doc-cc65-intern

New documentation: cc65-intern.sgml

8 years agoUse AX paradigm for stack initalization.
Oliver Schmidt [Mon, 7 Mar 2016 00:44:19 +0000 (01:44 +0100)]
Use AX paradigm for stack initalization.

8 years agoRenamed RAM to MAIN for all disk based targets.
Oliver Schmidt [Mon, 7 Mar 2016 00:28:55 +0000 (01:28 +0100)]
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.

8 years agoRenamed INITBSS to INIT and INIT to ONCE.
Oliver Schmidt [Sun, 6 Mar 2016 20:26:22 +0000 (21:26 +0100)]
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.

8 years agoMerge pull request #269 from jbrandwood/squarebracket
Oliver Schmidt [Thu, 3 Mar 2016 08:07:21 +0000 (09:07 +0100)]
Merge pull request #269 from jbrandwood/squarebracket

New ".feature" to use brackets instead of parens for 6502 indirect addressing.

8 years agocc65-intern update minor change notes from greg-king5 274/head
Brad Smith [Thu, 3 Mar 2016 02:01:46 +0000 (21:01 -0500)]
cc65-intern update minor change notes from greg-king5

8 years agoMerge remote-tracking branch 'refs/remotes/cc65/master' into doc-cc65-intern
Brad Smith [Thu, 3 Mar 2016 02:01:04 +0000 (21:01 -0500)]
Merge remote-tracking branch 'refs/remotes/cc65/master' into doc-cc65-intern

8 years agocc65-intern adjusting mailing address
Brad Smith [Wed, 2 Mar 2016 07:03:23 +0000 (02:03 -0500)]
cc65-intern adjusting mailing address

8 years agocc65-intern sgml fixes
Brad Smith [Wed, 2 Mar 2016 06:58:44 +0000 (01:58 -0500)]
cc65-intern sgml fixes

8 years agoMerge pull request #273 from mrdudz/emddocs
Oliver Schmidt [Sun, 28 Feb 2016 20:53:46 +0000 (21:53 +0100)]
Merge pull request #273 from mrdudz/emddocs

updated docs with recently added extended memory drivers

8 years agofixed copypaste errors 273/head
mrdudz [Sun, 28 Feb 2016 20:39:49 +0000 (21:39 +0100)]
fixed copypaste errors

8 years agoupdated docs with recently added extended memory drivers
mrdudz [Sun, 28 Feb 2016 19:12:28 +0000 (20:12 +0100)]
updated docs with recently added extended memory drivers

8 years agoLoad INITBSS segment from disk.
Oliver Schmidt [Sun, 28 Feb 2016 18:29:37 +0000 (19:29 +0100)]
Load INITBSS segment from disk.

Conceptually the INITBSS segment is not initialized in any way. Therefore it makes sense to not load it from disk. However the INIT segment has to be loaded from disk and therefore moved to its run location above the INITBSS segment. The necessary move routine increases runtime RAM usage :-(

Therefore we now "unnecessarily" load the INITBSS segment from disk too meaning that the INIT segment is loaded at its run location. Therefore there's no need for the move routine anymore.

After all we trade disk space for (runtime) RAM space - an easy decision ;-)

Notes:

- The code allowing to re-run a program without re-load present so far could not have worked as far as I can see as it only avoided to re-run the move routine but still tried to re-run the code in the INIT segment that was clobbered by zeroing the BSS. Therefore I removed the code in question altogether. I'm personally not into this "dirty re-run" but if someone wants to add an actually working solution I won't block that.

- INITBSS is intentionally not just merged with the DATA segment as ROM-based targets can't reuse the INIT segment for the BSS and therefore have no reason to place the INIT segment above INITBSS.

- Because ROM-based targets don't copy INITBSS from the ROM (like it is done with the DATA segment) all users of INITBSS _MUST_NOT_ presume INITBSS to be initialized with zeros!

8 years agoMerge pull request #238 from mrdudz/gamate
Bob Andrews [Sat, 27 Feb 2016 17:44:26 +0000 (18:44 +0100)]
Merge pull request #238 from mrdudz/gamate

Bit Corporation 'Gamate' support

8 years agoMerge pull request #241 from blackystardust/c128-function-ram-emd
Bob Andrews [Sat, 27 Feb 2016 17:08:55 +0000 (18:08 +0100)]
Merge pull request #241 from blackystardust/c128-function-ram-emd

C128 function ram emd

8 years agoMerge pull request #271 from silverdr/blackystardust_pr_post_review
Oliver Schmidt [Fri, 26 Feb 2016 23:55:11 +0000 (00:55 +0100)]
Merge pull request #271 from silverdr/blackystardust_pr_post_review

Blackystardust pr post review

8 years agoMerge branch 'blackystardust_pr_post_review' of github.com:silverdr/cc65 into blackys... 271/head
Patrycjusz R. Łogiewa [Fri, 26 Feb 2016 22:56:22 +0000 (23:56 +0100)]
Merge branch 'blackystardust_pr_post_review' of github.com:silverdr/cc65 into blackystardust_pr_post_review

8 years agoblackystardust pull request with post-review changes
silverdr [Fri, 26 Feb 2016 22:51:37 +0000 (23:51 +0100)]
blackystardust pull request with post-review changes

8 years agoblackystardust pull request with post-review changes
Patrycjusz R. Łogiewa [Fri, 26 Feb 2016 22:51:37 +0000 (23:51 +0100)]
blackystardust pull request with post-review changes

8 years agoMerge pull request #1 from cc65/master
silverdr [Fri, 26 Feb 2016 22:42:50 +0000 (23:42 +0100)]
Merge pull request #1 from cc65/master

sync

8 years agorevise note on prototypes/K&R conventions
Brad Smith [Fri, 26 Feb 2016 22:33:46 +0000 (17:33 -0500)]
revise note on prototypes/K&R conventions

8 years agodraft of cc65-intern document
Brad Smith [Fri, 26 Feb 2016 22:11:11 +0000 (17:11 -0500)]
draft of cc65-intern document

8 years agoAdd indirect JMP examples and fix typos in the documentation. 269/head
John Brandwood [Fri, 26 Feb 2016 16:10:11 +0000 (08:10 -0800)]
Add indirect JMP examples and fix typos in the documentation.

8 years agoAdd optional feature to use brackets instead of parens for 6502 indirect addressing.
John Brandwood [Thu, 25 Feb 2016 20:40:31 +0000 (12:40 -0800)]
Add optional feature to use brackets instead of parens for 6502 indirect addressing.

8 years agoMinor fix
Oliver Schmidt [Thu, 21 Jan 2016 19:51:17 +0000 (20:51 +0100)]
Minor fix

8 years agoAdded Watara.
Oliver Schmidt [Thu, 21 Jan 2016 19:49:21 +0000 (20:49 +0100)]
Added Watara.

8 years agoFixed #258.
Oliver Schmidt [Sat, 16 Jan 2016 21:41:14 +0000 (22:41 +0100)]
Fixed #258.

8 years agoMerge pull request #257 from greg-king5/actor-lineinfo
Oliver Schmidt [Sat, 16 Jan 2016 12:39:11 +0000 (13:39 +0100)]
Merge pull request #257 from greg-king5/actor-lineinfo

Make ca65's CONDES-type pseudo-instructions save line numbers correctly.

8 years agoFixed how ca65's CONDES-type pseudo-instructions save line numbers (for error messages). 257/head
Greg King [Fri, 15 Jan 2016 22:18:09 +0000 (17:18 -0500)]
Fixed how ca65's CONDES-type pseudo-instructions save line numbers (for error messages).

8 years agoMerge pull request #256 from polluks/master
Oliver Schmidt [Tue, 5 Jan 2016 20:13:12 +0000 (21:13 +0100)]
Merge pull request #256 from polluks/master

Changed stdout to stderr to separate sim65's output streams. Suggeste…

8 years agoChanged stdout to stderr to separate sim65's output streams. Suggested doc edit. 256/head
polluks [Tue, 5 Jan 2016 16:45:18 +0000 (17:45 +0100)]
Changed stdout to stderr to separate sim65's output streams. Suggested doc edit.

8 years agoMerge pull request #255 from polluks/master
Oliver Schmidt [Tue, 5 Jan 2016 16:26:31 +0000 (17:26 +0100)]
Merge pull request #255 from polluks/master

Some missing docu.

8 years agoUpdated index. 255/head
polluks [Tue, 5 Jan 2016 14:57:18 +0000 (15:57 +0100)]
Updated index.

8 years agoAdded sim65 documentation.
polluks [Tue, 5 Jan 2016 14:45:51 +0000 (15:45 +0100)]
Added sim65 documentation.

8 years agoFixed typos.
polluks [Tue, 5 Jan 2016 14:38:05 +0000 (15:38 +0100)]
Fixed typos.

8 years agoMerge pull request #254 from greg-king5/offset-pointer
Oliver Schmidt [Sat, 2 Jan 2016 12:55:42 +0000 (13:55 +0100)]
Merge pull request #254 from greg-king5/offset-pointer

Fix an unbalanced C stack that happens when a pointer is added to a 32-bit offset.

8 years agoAdded a cc65 regression test for pointer and offset addition operations. 254/head
Greg King [Fri, 1 Jan 2016 16:39:55 +0000 (11:39 -0500)]
Added a cc65 regression test for pointer and offset addition operations.

8 years agoFixed the cc65 code that handled an addition of a pointer to a 32-bit offset.
Greg King [Thu, 31 Dec 2015 22:41:48 +0000 (17:41 -0500)]
Fixed the cc65 code that handled an addition of a pointer to a 32-bit offset.

It didn't demote the offset to int because it looked at the pointer (instead of the offset) which already was 16 bits.

8 years agoMerge pull request #253 from greg-king5/pointer-compares
Oliver Schmidt [Tue, 29 Dec 2015 11:11:33 +0000 (12:11 +0100)]
Merge pull request #253 from greg-king5/pointer-compares

Make cc65 accept comparisons between pointers with different qualifiers.

8 years agoMade cc65 accept comparisons between pointers with different qualifiers (similarly... 253/head
Greg King [Tue, 29 Dec 2015 09:18:17 +0000 (04:18 -0500)]
Made cc65 accept comparisons between pointers with different qualifiers (similarly to subtractions between pointers).

8 years agoMerge pull request #249 from polluks/master
Oliver Schmidt [Sun, 27 Dec 2015 12:40:20 +0000 (13:40 +0100)]
Merge pull request #249 from polluks/master

My first PR

8 years agoAdded chrcvt documentation 249/head
polluks [Sun, 27 Dec 2015 01:09:12 +0000 (02:09 +0100)]
Added chrcvt documentation

8 years agoAmiga support #192
polluks [Sun, 27 Dec 2015 00:26:28 +0000 (01:26 +0100)]
Amiga support #192

8 years agotweaked soft env 238/head
mrdudz [Thu, 24 Dec 2015 23:59:22 +0000 (00:59 +0100)]
tweaked soft env

8 years agoUpdate package index (as recommended by Travis CI).
Oliver Schmidt [Wed, 16 Dec 2015 11:24:47 +0000 (12:24 +0100)]
Update package index (as recommended by Travis CI).

8 years agoMerge pull request #248 from greg-king5/nes-registers
Oliver Schmidt [Wed, 16 Dec 2015 09:40:41 +0000 (10:40 +0100)]
Merge pull request #248 from greg-king5/nes-registers

Remove a const qualifier from <nes.h>.

8 years agoPrograms need to reset NES input controllers by writing to them. 248/head
Greg King [Tue, 15 Dec 2015 16:26:04 +0000 (11:26 -0500)]
Programs need to reset NES input controllers by writing to them.

8 years agoMerge pull request #247 from clbr/master
Oliver Schmidt [Tue, 15 Dec 2015 15:01:54 +0000 (16:01 +0100)]
Merge pull request #247 from clbr/master

nes: Fix reading the second controller

8 years agones: Fix reading the second controller 247/head
Lauri Kasanen [Mon, 14 Dec 2015 17:23:27 +0000 (19:23 +0200)]
nes: Fix reading the second controller

See
http://wiki.nesdev.com/w/index.php/Controller_port_registers

8 years agoMerge pull request #246 from greg-king5/shift-signed-char
Oliver Schmidt [Mon, 14 Dec 2015 17:25:57 +0000 (18:25 +0100)]
Merge pull request #246 from greg-king5/shift-signed-char

Fix a signed char right-shift compiler optimization.

8 years agoAdded another op-code to the test pattern for a right-shift optimizer in cc65. 246/head
Greg King [Mon, 14 Dec 2015 16:50:43 +0000 (11:50 -0500)]
Added another op-code to the test pattern for a right-shift optimizer in cc65.

8 years agoAdded a regression test program for the changes in the right-shift optimizer.
Greg King [Mon, 14 Dec 2015 16:46:30 +0000 (11:46 -0500)]
Added a regression test program for the changes in the right-shift optimizer.

8 years agoExtended a signed char shift optimization, to handle shifts that are longer than...
Greg King [Sun, 13 Dec 2015 22:10:31 +0000 (17:10 -0500)]
Extended a signed char shift optimization, to handle shifts that are longer than 4 bits.

8 years agoFixed a signed char shift optimization so that it won't be used on signed int also.
Greg King [Sun, 13 Dec 2015 12:17:41 +0000 (07:17 -0500)]
Fixed a signed char shift optimization so that it won't be used on signed int also.

(It would lose significant bits from the high byte.)

8 years agoFixed soft80 shutdown.
Oliver Schmidt [Wed, 2 Dec 2015 20:34:08 +0000 (21:34 +0100)]
Fixed soft80 shutdown.

A call to $FDA3 cannot be used because it re-enables the BASIC ROM. If a large program (such as Contiki's webbrowser80) has destructor code or data "behind" that ROM, then the program might crash when it tries to quit gracefully. Changing that code to set CIA2_PRA works well enough.

8 years agoMerge pull request #240 from blackystardust/fix-c128-ram-rts
Oliver Schmidt [Wed, 2 Dec 2015 09:40:06 +0000 (10:40 +0100)]
Merge pull request #240 from blackystardust/fix-c128-ram-rts

Fixed the c128 bank 1 emd.

8 years agoRenamed MMU_CFG_INT_FROM -> MMU_CFG_IFROM and MMU_CFG_EXT_FROM -> MMU_CFG_EFROM 241/head
Marco van den Heuvel [Wed, 2 Dec 2015 08:30:30 +0000 (00:30 -0800)]
Renamed MMU_CFG_INT_FROM -> MMU_CFG_IFROM and MMU_CFG_EXT_FROM -> MMU_CFG_EFROM

8 years agooptimized the sei/cli pairing a bit. 240/head
Marco van den Heuvel [Wed, 2 Dec 2015 08:21:55 +0000 (00:21 -0800)]
optimized the sei/cli pairing a bit.

8 years agooptimized the sei/cli pairing a bit for internal function ram emd as well.
Marco van den Heuvel [Wed, 2 Dec 2015 08:17:29 +0000 (00:17 -0800)]
optimized the sei/cli pairing a bit for internal function ram emd as well.

8 years agooptimized the sei/cli pairing a bit.
Marco van den Heuvel [Wed, 2 Dec 2015 08:14:56 +0000 (00:14 -0800)]
optimized the sei/cli pairing a bit.

8 years agofixup conio.c some more. also includes merge of upstream/master because git is retarded.
mrdudz [Tue, 1 Dec 2015 23:13:32 +0000 (00:13 +0100)]
fixup conio.c some more. also includes merge of upstream/master because git is retarded.

8 years agoMade conio program compatible with joystick-only target(s).
Oliver Schmidt [Tue, 1 Dec 2015 22:06:51 +0000 (23:06 +0100)]
Made conio program compatible with joystick-only target(s).