home *** CD-ROM | disk | FTP | other *** search
- * DClockAux.asm ************************************************************
- *
- * DClockAux.asm --------- Assembly language sub-routines for
- * DClock-Handler.
- *
- * Author ---------------- Olaf 'Olsen' Barthel, MXM
- * Brabeckstrasse 35
- * D-3000 Hannover 71
- *
- * Federal Republic of Germany
- *
- * This program truly is in the PUBLIC DOMAIN. Written on a cold
- * and damp September evening, hoping the next morning would be
- * better.
- *
- * Compiled using Aztec C 5.0a, CygnusEd Professional 2 & ARexx.
- *
- ****************************************************************************
-
- SECTION DClockAux,CODE
-
- ; Imported symbols
-
- XREF _ModifiedDisplayBeep
- XREF _ModifiedCloseWBench
- XREF _OldCloseWBench
- XREF _OldDisplayBeep
-
- ; Library reference
-
- XREF _LVORawDoFmt
-
- ; Exported symbols
-
- XDEF _NewDisplayBeep
- XDEF _NewCloseWBench
- XDEF _Format
-
- *------------------------------------------------------------------------------
-
- DS.L 0
-
- _NewDisplayBeep:MOVEM.L D2-D7/A0-A6,-(SP) ; Save most registers
-
- JSR _geta4# ; Tickle the base register
- JSR _ModifiedDisplayBeep ; Call our magic creation
-
- MOVEM.L (SP)+,D2-D7/A0-A6 ; Restore registers
- RTS
-
- *------------------------------------------------------------------------------
-
- _NewCloseWBench:MOVEM.L D2-D7/A2-A6,-(SP) ; Save most registers
-
- JSR _geta4# ; Tickle the base register
- JSR _ModifiedCloseWBench ; Call our magic creation
-
- MOVE.L _OldCloseWBench,A1 ; Remember old routine
-
- MOVEM.L (SP)+,D2-D7/A2-A6 ; Restore registers
-
- JMP (A1) ; Jump to old routine...
-
- *------------------------------------------------------------------------------
-
- _Format: MOVEM.L A2/A3/A6,-(SP)
-
- MOVE.L 4+12(SP),A3 ; Destination string
- MOVE.L 8+12(SP),A0 ; Format string
- LEA 12+12(SP),A1 ; Arguments (stack)
- LEA stuffchar(PC),A2 ; Formatting routine
-
- MOVEA.L 4,A6 ; ExecBase
- JSR _LVORawDoFmt(A6) ; Format it
-
- MOVEM.L (SP)+,A2/A3/A6 ; Restore registers
-
- RTS
-
- stuffchar: MOVE.B D0,(A3)+ ; Puts a character into the
- RTS ; char buffer.
-
- *------------------------------------------------------------------------------
-
- END
-