' Volker Hemsen 17.10.92
'
' Patch fr die GFA-Basic Library 'GFA3BLIB' Version 3.07
'
' Diese kleine Patch-Routine beruht auf dem Quick-Tip von Christoph Conrad
' in der ST-Computer 9/92. Leider stimmen die dort angegebenen Patch-Adressen
' nicht fr jede Version der Compilers. Die unten aufgefhrten habe ich mit
' dem Desert Drain herausgefunden.
' Diese Routine kopiert die Lib und ver„ndert einige LINEA-Funktionen.
'
a$="F:\gfa\lib\gfa3blib"        !alter Pfad
b$="F:\gfa\lib\gfa3blip"        !neuer Pfad
' Achtung, nicht vergessen: Auch GFA3BLIB.NDX umbenennen!
' Ein direktes Patchen des Originals kann ich nicht empfehlen!
'
OPEN "i",#1,a$          !alte Lib einladen
len%=LOF(#1)
DIM a&(len%/2)
BGET #1,V:a&(0),len%
CLOSE #1
'
'       init
@set_nop(&H310C)
'
'       hidem und showm-Routinen v”llig berschreiben (schadet nicht)
FOR i%=&H5406 TO &H5460 STEP 2
  @set_rts(i%)
NEXT i%
'
'       supexec
@set_nop(&HC048)
'
'       VDI
@set_bras2(&H3BFE)
@set_bras2(&H3C26)
'
'       AES
@set_bras2(&H3BD6)
@set_bras2(&H3C66)
'
'       Clipping bei Programmstart (GRAPHINI)
@set_bras2(&H8D2C)
'
BSAVE b$,V:a&(0),len%           !und wieder speichern
EDIT
'
'
PROCEDURE set_nop(a%)           !NOP einsetzen
  WORD{V:a&(0)+a%}=&H4E71
RETURN
PROCEDURE set_rts(a%)           !RTS einsetzen
  WORD{V:a&(0)+a%}=&H4E75
RETURN
PROCEDURE set_bras2(a%)         !BRA.S +2 einsetzen
  WORD{V:a&(0)+a%}=&H6002
RETURN
