[comp.sys.amiga] Graphics Text functions

judd@tramp.Colorado.EDU (JUDD STEPHEN L) (12/04/89)

  Would somebody be so kind as to explain to me how to access the disk-resident
fonts?  My program (see excerpt below) gets to the AvailFonts() call and gurus
(GOMF1.0 says my program is probably out of control.  No kidding :-).  It also
did this at the OpenDiskFont() call (before I put in the AvailFonts() call).
Anyway, I've referenced the Sybex Amiga Programmers Handbook, my Modula-2 SBM
definitions, and an Abacus (Tricks and Tips) program that didn't work (BIG
suprise) and yet the guru still prevails.  ANY help would be appreciated.


  Diskfont:= OpenLibrary(ADR('diskfont.library'), 0);  
  IF Diskfont = NIL THEN HALT; END;
  OpenNewWindow;
  WITH textAttr DO
    taName:= ADR('sapphire');
    taYSize:= 14;
    taFlags:= FontFlagsSet{DiskFont, TallDot, Proportional};
  END;
  ALLOCATE(buffer, 1000D);
  error:= AvailFonts(buffer, 1000D, AvailFontTypeSet{AFDisk});
  Sapphire14:= OpenDiskFont(textAttr);
  .
  .
  .
  [ I lost most of my program in transmission but I think this is correct ]

  - Steve
 
P.S. CU over Notre Dame by 14 points.

jms@tardis.Tymnet.COM (Joe Smith) (12/10/89)

In article <14507@boulder.Colorado.EDU> judd@tramp.Colorado.EDU (JUDD STEPHEN L) writes:
>fonts?  My program (see excerpt below) gets to the AvailFonts() call and gurus
>  Diskfont:= OpenLibrary(ADR('diskfont.library'), 0);  
>  IF Diskfont = NIL THEN HALT; END;
> ...
>  Sapphire14:= OpenDiskFont(textAttr);

Are you absolutely certain that you are using the right variable name to
hold the address of the diskfont.library?  If OpenDiskFont() makes a
reference to the external global variable DiskFont and you put the pointer
into Diskfont, that is guarenteed to cause a GURU.
-- 
Joe Smith (408)922-6220 | SMTP: JMS@F74.TYMNET.COM or jms@gemini.tymnet.com
BT Tymnet Tech Services | UUCP: ...!{ames,pyramid}!oliveb!tymix!tardis!jms
PO Box 49019, MS-D21    | PDP-10 support: My car's license plate is "POPJ P,"
San Jose, CA 95161-9019 | humorous dislaimer: "My Amiga speaks for me."