Re: Re[6]: [cc65] Graphics library

Date view Thread view Subject view

From: Mike McCarty (
Date: 2001-08-16 00:04:32

On Wed, 15 Aug 2001, groepaz wrote:

> Hello Mike,
> Wednesday, August 15, 2001, 8:16:27 PM, you wrote:
> MM> On Wed, 15 Aug 2001, groepaz wrote:

> MM> One point to make here, I think, is that the decisions can be made
> MM> *once* and once *only*. One simply installs the pointers into a table.
> MM> Then the tests don't have to be made over and over.
> yes, i am thinking about converting those case-constructs to
> jump-via-function-pointers aswell... BUT what i am asking is, would
> the linker be able to fill out that jumptable at link-time? or would
> an init-function that checks the modules included and sets up the
> jumptable accordingly ALWAYS be needed anyway (thats what i'd like to
> get off without).

As I see it, either all the code is present in the emitted program, or
not all is present. If all is present, then the startup code or
graphics init code or some other code can check the execution
environment, and install the proper jumps into the table.

If not all the code is present, then either some code must be able to
locate that code and read it from some persistent memory (say a disc)
or there are some environments in which the program cannot run. If the
linker makes the decision about what to put in the program, and the
execution environment and/or startup code do not support reading from
persistent memory, then the latter condition holds.

One possibility is the use of load time linking, sometimes called
shared libraries or sharable code segments. I belive that Windows calls
them DLLs (Dynamic Load Libraries?). One could get the loader to find
the required code and load it out of persistent memory, after which the
loader could exit memory.

char *p="char *p=%c%s%c;main(){printf(p,34,p,34);}";main(){printf(p,34,p,34);}
This message made from 100% recycled bits.
I can explain it for you, but I can't understand it for you.
I don't speak for Alcatel      <- They make me say that.

To unsubscribe from the list send mail to with
the string "unsubscribe cc65" in the body(!) of the mail.

Date view Thread view Subject view

This archive was generated by hypermail 2.1.3 : 2001-12-14 22:05:41 CET