1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-08 13:04:52 +00:00
Commit Graph

62 Commits

Author SHA1 Message Date
Oliver Schmidt
13482984ca Introduced internal gotoxy that pops both parameters.
About all CONIO functions offering a <...>xy variant call
  popa
  _gotoxy

By providing an internal gotoxy variant that starts with a popa all those CONIO function can be shortened by 3 bytes. As soon as program calls more than one CONIO function this means an overall code size reduction.
2016-06-05 14:58:38 +02:00
Oliver Schmidt
1d1ba3ed3b 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.
2016-03-16 16:28:32 +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
Greg King
c7969a78b0 Refined the comments in the target start-up files.
Fixed typo errors.  Made the comments consistent across all those files.
2014-08-24 10:10:20 -04:00
Greg King
0390c34e88 Changed multi-line C comments into another style.
The left side doesn't look unbalanced.
2014-06-30 16:51:07 -04:00
Oliver Schmidt
94eb2a2ed7 Some fine tuning of the mouse driver interface harmonization. 2014-01-17 21:09:15 +01:00
Oliver Schmidt
85885001b1 Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
Oliver Schmidt
008b4c4e1d Replaced whole bunch for Makefiles with a single generic Makefile.
- No complex shell logic.
- "Source file shadowing" for all targets via vpath.
- Dependency handling.
- True incremental build.
- Don't write into source directories.
- Easy cleanup by just removing 'wrk'.
2013-05-04 22:10:48 +02:00
Oliver Schmidt
414a59ce65 Fixed typos. 2013-04-02 17:29:13 +03:00
Oliver Schmidt
2250698f81 Fixed typos. 2013-04-02 17:24:21 +03:00
Oliver Schmidt
cf0463efe3 Fixed typo. 2013-04-02 17:15:02 +03:00
ol.sc
3aabd85bf4 Apply "improved" cursor-off handling for native GEOS API too.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5876 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-25 20:02:01 +00:00
ol.sc
46f1085e2d Fixed several aspects of the GEOS CONIO implementation:
- cputc was drawing at the wrong position, therefore one line had to be removed as a workaround.
- chline, cvline were drawing one pixel to large lines.
- cclear was drawing an in both directions one pixel to big rect.
- the cursor was drawn at wrong times at wrong places in a wrong size.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5874 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-23 19:42:57 +00:00
ol.sc
d620c2dc7a Minor adjustment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5871 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-23 19:25:11 +00:00
ol.sc
590e382a2b Removed revers as it doesn't influence clrscr, cclear, chline, cvline and does look pretty ugly on cputs because there's no opaque background.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5861 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-19 07:11:04 +00:00
ol.sc
17659555f8 Removed cpputs/cpputsxy as they don't work and as there's really very little use for proprietary extensions of a character API emulated on a graphics systems.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5860 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-19 06:53:55 +00:00
ol.sc
ffc06fcea3 Apple GEOS reserves beside the main app area at $4000-$C000 a secondary app area at $0C00-$2000. While it was an elegant idea to use that secondary area for overlays at the end of the day those 5 kB are just too small. So now overlays go at the end of the main area (as with GEOS 64/128).
However the stack (usually 1 kB) can be securely placed in the secondary area without effort from the side of the developer. The rest of the secondary area (usually 4 kB) is made available to the developer as (uninitialized) 'EXTBSS'.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5696 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-06-08 21:46:51 +00:00
ol.sc
f6825b244a Added screen initialization on Apple GEOS.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5568 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-28 21:24:17 +00:00
ol.sc
204aba1577 Introduced Apple GEOS specific screen size constants.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5567 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-27 22:00:26 +00:00
ol.sc
351e0828c6 Rather stay with OFF_YEAR as it is an "officially" name.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5547 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-22 23:49:45 +00:00
ol.sc
336e53348b Introduced Apple GEOS specific directory entry offsets. However in most cases the assembler code using them will need to differentiate between CBM and Apple because the directory entry semantics are (too) different.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5545 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-22 23:26:25 +00:00
ol.sc
c8f3b16f99 Minor style adjustment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5544 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-22 22:59:38 +00:00
ol.sc
340565f7c5 Added missing file.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5541 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-22 22:04:53 +00:00
ol.sc
c1bb9678d5 Fixed line continuation.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5540 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-22 22:04:20 +00:00
ol.sc
0585877788 Fixed typo.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5539 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-22 19:57:01 +00:00
ol.sc
e3f43a2894 Fixed typo.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5535 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-20 23:01:45 +00:00
ol.sc
db0cf2b8d1 Greg King: SHORTCUT is a graphic character (it is displayed in menues); it is not a control character.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5534 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-20 22:48:02 +00:00
ol.sc
fb7d8a7c37 My recent decision to reuse the character specification table from the base target was based on the fact that CBM GEOS used a copy of the CBM character specification table for the last ten years.
However now I understand that CBM GEOS does _not_ use PETSCII so the CBM character specification table doesn't make sense at all. After all this is very plausible because GEOS wants to enable the user to share his files across GEOS variants - so we can share the character specification table too.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5527 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-17 20:23:35 +00:00
ol.sc
1ccfe46892 Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5515 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 10:54:40 +00:00
ol.sc
14c3956ea6 The actual screensize routine mustn't be placed in the "INIT" segment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5514 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 10:40:59 +00:00
ol.sc
ff746b119c On Apple GEOS all "low jumptable" entries went into 'diskdrv.inc'. So this needs to be included in quite some source files.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5511 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 09:24:09 +00:00
ol.sc
ed92935ef7 Removed '.c65' from include file name.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5509 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 09:13:34 +00:00
ol.sc
e703b549ce The macro 'bra' conflicts with the 65C02 instruction. As it isn't actually used I simply removed it.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5508 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 09:05:04 +00:00
ol.sc
e6fba95c90 Adjusted sorting.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5507 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 07:59:49 +00:00
ol.sc
c7ecb52581 Adjusted hex digit cases.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5505 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 07:41:56 +00:00
ol.sc
2a0fd9bda0 Renamed 'UnBlockProcess' to 'UnblockProcess' and 'UnFreezeProcess' to 'UnfreezeProcess' to matchall 3rd party docs.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5504 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-09 07:37:08 +00:00
ol.sc
129d3bf872 - The address given for GetSerialNumber in the "Hitchhiker's Guide To GEOS" is obviously wrong: $4b38.
- According to the "Hitchhiker's Guide To GEOS" GetSerialNumber returns a string on Apple GEOS (in contrast to a number on CBM GEOS).
Given both facts and that the API is presumably not important at all it seems reasonable to just go without it on Apple GEOS.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5503 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 19:48:31 +00:00
ol.sc
7a076cf145 Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5502 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 17:21:18 +00:00
ol.sc
9349f30863 Fixed typo.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5501 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 17:01:59 +00:00
ol.sc
5149fea3e1 Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5500 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 16:56:54 +00:00
ol.sc
00ddcaeb93 Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5499 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 16:13:01 +00:00
ol.sc
9aac71b74a Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5498 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 15:54:44 +00:00
ol.sc
d30ecfbd0e Normalized coding style.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5497 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 15:23:45 +00:00
ol.sc
75dc65c217 Prepared infrastructure for a shared loadable generic mouse driver based the GEOS API.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5496 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-08 14:30:07 +00:00
ol.sc
ea993a5e31 Moved the assembler include files from 'geos-cbm' to 'geos-common' which are believed to work as-is on Apple GEOS too.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5492 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-07 20:11:36 +00:00
ol.sc
9082aa8d99 'setoserror' is used by routines residing both 'disk' and 'file'. Therefore move it to 'system' - where the other oserr-related stuff resides.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5489 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-07 16:50:23 +00:00
ol.sc
4494a930e3 Moved non-driver files from 'geos-cbm/devel' to 'geos-common/system' which are believed to work as-is on Apple GEOS too.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5488 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-07 16:42:59 +00:00
ol.sc
b944a6acdf Moved the 'conio' files from 'geos-cbm' to 'geos-common' which are believed to work as-is on Apple GEOS too.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5486 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-07 13:53:14 +00:00
ol.sc
5f4129f14d Moved the 'common' files from 'geos-cbm' to 'geos-common' which are believed to work as-is on Apple GEOS too.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5449 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-04 22:17:46 +00:00
ol.sc
8a06174cb4 "Apple disk names are null-terminated strings of 16 characters or less (counting the null-terminator)."
git-svn-id: svn://svn.cc65.org/cc65/trunk@5448 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-02-04 21:53:20 +00:00