Re: [cc65] Atari file i/o functions

Date view Thread view Subject view

From: Ullrich von Bassewitz (uz_at_musoftware.de)
Date: 2002-04-24 13:50:10


On Wed, Apr 24, 2002 at 01:38:39PM +0200, Adam Dunkels wrote:
> I can only agree with groepaz - cool! This would make it easier to support
> dynamic applications in uIP as well!

Yes. But as I said before, writing modules in C has some overhead. The reason
for this is that the loader does not use the symbols from the o65 file for
runtime linking, because of the overhead. By using import/export name tables,
it would be possible to link a C module so that it uses the runtime routines
from the main module. But this would require a large name table in the
application, because the application must know at runtime, which functions
from the runtime library are available and at which address. Both operating
systems using the o65 format (OS/A65 and Lunix) don't do that for the same
reason (too much overhead).

Instead of using dynamic linking by name, modules are supposed to have a jump
table at the start address of the code segment - I think we can live with
that, especially for drivers, which will have a fixed set of API functions
anyway.

So a loaded module written in C must contain all the runtime stuff by itself,
even if the same routines are also linked to the main program. This will lead
to some overhead (how much this is exactly depends on the module in question).

Regards


        Uz


-- 
Ullrich von Bassewitz                                  uz_at_musoftware.de
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de 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 : 2002-04-24 13:50:18 CEST