Re: IEN mit HighTec gnu166 Kategorie: Progr. Assembler, TaskingTools, OS (von norbert r - 10.12.2002 20:47) | |
Als Antwort auf Re: IEN mit HighTec gnu166 von hannes - 10.12.2002 17:51
| |
hallo, > wow, das war leicht. > danke! > > welchen sinn hatte der initalisierungscode in crt0_167.s dann? weis ich auch nicht genau. das war die standard-library vom gnu-compiler, nur leicht verändert.ich hatte auch erst gedacht dass man den code braucht, aber nach zahlreichen versuchen stellte ich fest, dass man den einfach weglassen kann, damit alles funktioniert. die VM übernimmt diese initialisierungen wahrscheinlich. > > oh und wei� jemand, ob eric an der cc2 implemntierung noch weiterarbeitet weis ich nicht > dh(aus dem archiv): > >>- Add interrupt support, > >>- rewrite all C2 library functions to C, > >>- floating point routines (if needed), > >>- Adapt (replace) the OS to use more (all) segments for c-code. > > danke nochmal > hannes > > also interrupts lassen sich genauso einfach integrieren. man macht einfach noch eine weitere Sprungmarke in der crt0_167.s. die beiden pop-befehle müssen nicht dort stehen. so sieht das dann aus: .text start: @einsprung für die normale mit call aufgerufende routine pop r1 pop r1 jmps SEG:_main,SOF:_main interrupt: @für die mit hook eingehängte interruptroutine jmps SEG:_interrupt1,SOF_interrupt1 das wars die c-funktion muss hier natürlich interrupt1() hei�en dauf diese weise lassen sich beliebig viele routinen erstellen die adressse lässt sich ja aus der .lst-datei entnehmen (in diesem fall also 0x08 für die interruptroutine) im c2-programm muss dann natürlich noch der hook-befehl mit verweis auf die adresse stehen . norbert | |
Antwort schreiben Antworten: |