home *** CD-ROM | disk | FTP | other *** search
- ********************************************************************************
- * EyeMove by MC68 *
- * If you find any bugs in the program please let me know. *
- * Write to the following address: *
- * Andrzej Fien Finished: 14.09.1990 *
- * ul.Turkienicza 17/26 *
- * 35-010 Rzeszow *
- * POLAND *
- ********************************************************************************
-
- OpenLibrary EQU -552 ;(libratyName,version)(A1,D0)
- CloseLibrary EQU -414 ;(library)(A1)
- GetMsg EQU -372 ;(port)(A0)
- ReplyMsg EQU -378 ;(message)(A1)
- Open EQU -30 ;(name,accessMode)(D1-D2)
- Close EQU -36 ;(file)(D1)
- Write EQU -48 ;(file,buffer,length)(D1-D3)
- OpenWindow EQU -204 ;(OWargs)(A0)
- CloseWindow EQU -72 ;(Window)(A0)
- ActivateGadget EQU -462 ;(Gadgets,Window,Req)(A0-A2)
- AllocRemember EQU -396 ;(RememberKey,Size,Flags)(A0,D0-D1)
- FreeRemember EQU -408 ;(RememberKey,ReallyForget)(A0,D0)
-
- * stack frame map
- PublicMemory EQU -20
- RP EQU -16
- WW EQU -12
- IntBase EQU -8
- DosBase EQU -4
-
- ******************** Code ******************************************************
-
- LINK A4,#-20
- MOVE.L 4.W,A6
- LEA DosName(PC),A1
- MOVEQ #0,D0
- JSR OpenLibrary(A6)
- MOVE.L D0,DosBase(A4)
- BEQ.W GetOut
- LEA IntName(PC),A1
- MOVEQ #0,D0
- JSR OpenLibrary(A6)
- MOVE.L D0,IntBase(A4)
- BEQ.W CloseDos
- MOVE.L D0,A6
- LEA RememberKey(PC),A0
- MOVE.L #5120,D0
- MOVEQ #1,D1
- JSR AllocRemember(A6)
- MOVE.L D0,PublicMemory(A4)
- BEQ.W CloseInt
- LEA AddressWW(PC),A0
- JSR OpenWindow(A6)
- MOVE.L D0,WW(A4)
- BEQ.W FreeMemory
- MOVE.L D0,A1
- MOVE.L 50(A1),RP(A4)
- LEA AddressGG(PC),A0
- SUBA.L A2,A2
- JSR ActivateGadget(A6)
-
- AddressLoop MOVE.L WW(A4),A0
- MOVE.L 86(A0),A0
- MOVE.L 4.W,A6
- JSR GetMsg(A6)
- TST.L D0
- BEQ.S AddressLoop
- MOVE.L D0,A1
- MOVE.W 22(A1),D2
- JSR ReplyMsg(A6)
- CMPI.W #$200,D2
- BEQ.S Quit
- LEA AddressBuffer(PC),A2
- MOVEQ #0,D0
- TST.B (A2)
- BEQ.S Quit
- ConvertBuffer MOVE.B (A2)+,D1
- BEQ.S EndBuffer
- SUBI.B #'0',D1
- BCLR #5,D1
- CMPI.B #9,D1
- BLS.S LessOrSame
- SUBQ.B #7,D1
- LessOrSame CMPI.B #$0F,D1
- BHI.S Quit
- LSL.L #4,D0
- ADD.B D1,D0
- BRA.S ConvertBuffer
- EndBuffer BSR.W MovePicture
-
- MOVE.L DosBase(A4),A6
- MOVE.L #ImageFile,D1
- MOVE.L #1006,D2
- JSR Open(A6)
- MOVE.L D0,D1
- BEQ.S Quit
- MOVE.L D0,-(A7)
- MOVE.L PublicMemory(A4),D2
- MOVE.L #5120,D3
- JSR Write(A6)
- MOVE.L (A7)+,D1
- JSR Close(A6)
-
- Quit MOVE.L WW(A4),A0
- MOVE.L IntBase(A4),A6
- JSR CloseWindow(A6)
- FreeMemory LEA RememberKey(PC),A0
- MOVEQ #1,D0
- JSR FreeRemember(A6)
- CloseInt MOVE.L A6,A1
- MOVE.L 4.W,A6
- JSR CloseLibrary(A6)
- CloseDos MOVE.L DosBase(A4),A1
- JSR CloseLibrary(A6)
- GetOut UNLK A4
- MOVEQ #0,D0
- RTS
-
- MovePicture MOVE.L D0,A1
- MOVE.L PublicMemory(A4),A0
- MOVE.L A1,A3
- BSR.S Moving
- LEA 16000(A3),A1
- Moving MOVEQ #40-1,D1
- MoveLine MOVEQ #64-1,D0
- MOVE.L A1,A2
- MoveByte MOVE.B (A1)+,(A0)+
- DBF D0,MoveByte
- LEA 80(A2),A1
- DBF D1,MoveLine
- RTS
-
- AddressWW DC.W 259,103,122,50
- DC.B 3,2
- DC.L $240,$3100A,AddressGG,0,TextAddress,0,0
- DC.W 0,0,0,0,1
- AddressGG DC.W 0,0,24,26,72,10,0,3,4
- DC.L Border,0,0,0,AddressSInfo
- DC.W 0,0,0
- AddressSInfo DC.L AddressBuffer,AddressBuffer
- DC.W 0,7,0,0,0,0,0,0,0,0,0,0,0,0
- Border DC.W 0,0
- DC.B 1,0,0,5
- DC.L Lines,0
- Lines DC.W -4,-2,76,-2,76,9,-4,9,-4,-2
- RememberKey DC.L 0
- AddressBuffer DCB.B 7,0
- ImageFile DC.B 'Image.CE',0
- IntName DC.B 'intuition.library',0
- DosName DC.B 'dos.library',0
- TextAddress DC.B 'Points to:',0
- EVEN
-