;       CheckPrinter v0.38
;       (alert-requester)
;       DevPac-Version
;       Istvan 'Isy' Bognar


CheckPrinter:

        lea.l  $bfd000,a0       ; druckeradresse nach a0 laden
        move.l (a0),d0          ; druckerstatus nach d0 laden
        and.b  #%111,d0         ; statusbyte ausmaskieren
        cmp.w  #$ff00,d0        ; ist papier im drucker ?
        beq.s  NoPaper          ; wenn nein, dann ausgabe kein papier
        cmp.w  #$fd00,d0        ; ist der drucker online ?
        beq.s  OffLine          ; wenn nein, dann ausgabe offline
        cmp.w  #$fc00,d0        ; ist der drucker online ?
        beq.s  OnLine           ; wenn ja, dann ausgabe online
        rts

OffLine:
        moveq #0,d4             ; lade 0 nach d4 fuer spaeteren vergleich
        jsr   Ausgabe           ; springe zur ausgaberoutine
        rts

OnLine: moveq #1,d4             ; lade 1 nach d4 fuer spaeteren vergleich
        jsr   Ausgabe           ; springe zur ausgaberoutine
        rts

NoPaper:
        moveq #2,d4             ; lade 2 nach d4 fuer spaeteren vergleich
        jsr   Ausgabe           ; springe zur ausgaberoutine
        rts


Ausgabe:
        move.l 4,a6 
        lea    intname,a1       ; oeffne die intuition library
        jsr    -408(a6)
        move.l d0,intbase       ; sichere buffer
        move.l intbase,a6       ; "     "
        cmp    #2,d4            ; vergleiche die drei moeglichen faelle
        lea    NoPaper_text,a0
        beq    marke
        cmp    #1,d4
        lea    OnLine_text,a0
        beq    marke
        cmp    #0,d4
        lea    OffLine_text,a0
marke:  move.l #1,d0
        move.l #55,d1           ; groesse des alert-requesters
        jsr    -90(a6)
        move.l 4,a6
        move.l intbase,a1       ; schliesse die library
        jsr    -414(a6)
        rts


OffLine_text:
        dc.b 1,10
        dc.b ' Drucker ist offline !',0

OnLine_text:
        dc.b 1,10
        dc.b ' Drucker ist online !',0

NoPaper_text:
        dc.b 3,10
        dc.b ' Kein Papier oder Drucker ist ausgeschaltet !',0


intbase: dc.l 0

buffer:  dc.b 80,0

intname: dc.b 'intuition.library',0

