Home » Archimedes archive » Acorn User » Acorn User - Updated Shareware Collection (1994).adf » Programs » !WelcomeA/Library/Assembler/SpriteVar

!WelcomeA/Library/Assembler/SpriteVar

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » Acorn User - Updated Shareware Collection (1994).adf » Programs
Filename: !WelcomeA/Library/Assembler/SpriteVar
Read OK:
File size: 07B6 bytes
Load address: 0000
Exec address: 0000
File contents
    1REM>SpriteVar
    2REMProduced by BasCompress v1.31 (18 Jan 1993)
    3DEFFN_SpriteVar_version=4
    4DEFFN_hard_initialise_SpriteVar=0
    5DEFPROC_SpriteVar(code%,L%):LOCALO%,P%,pass%:pass%=14:O%=code%:P%=0:[OPTpass%:.spNext DCD0:.spNameFNr(12):.spWidth DCD0:.spHeight DCD0:.spLBit DCD0:.spRBit DCD0:.spImage DCD0:.spTrans DCD0:.spMode DCD0:.spPalette:]:O%=code%:P%=0:[OPTpass%:.saEnd DCD0
    6.saNumber DCD0:.saFirst DCD0:.saFree DCD0:.saExten:]:SpriteCBsize=spPalette-spNext:SpriteNameSize=spWidth-spName:MaxSpritePaletteSize=16*8:MaxSpriteWidth=32768:MaxSpriteHeight=32768:SpriteAreaCBsize=saExten-saEnd:SpriteReason_ScreenSave=2
    7SpriteReason_ScreenLoad=3:SpriteReason_ReadAreaCB=8:SpriteReason_ClearSprites=9:SpriteReason_LoadSpriteFile=10:SpriteReason_MergeSpriteFile=11:SpriteReason_SaveSpriteFile=12:SpriteReason_ReturnName=13:SpriteReason_GetSprite=14
    8SpriteReason_CreateSprite=15:SpriteReason_GetSpriteUserCoords=16:SpriteReason_SelectSprite=24:SpriteReason_DeleteSprite=25:SpriteReason_RenameSprite=26:SpriteReason_CopySprite=27:SpriteReason_PutSprite=28:SpriteReason_CreateMask=29
    9SpriteReason_RemoveMask=30:SpriteReason_InsertRow=31:SpriteReason_DeleteRow=32:SpriteReason_FlipAboutXAxis=33:SpriteReason_PutSpriteUserCoords=34:SpriteReason_AppendSprite=35:SpriteReason_SetPointerShape=36:SpriteReason_ReadSpriteSize=40
   10SpriteReason_ReadPixelColour=41:SpriteReason_WritePixelColour=42:SpriteReason_ReadPixelMask=43:SpriteReason_WritePixelMask=44:SpriteReason_InsertCol=45:SpriteReason_DeleteCol=46:SpriteReason_FlipAboutYAxis=47:SpriteReason_PlotMask=48
   11SpriteReason_PlotMaskUserCoords=49:SpriteReason_PlotMaskScaled=50:SpriteReason_PaintCharScaled=51:SpriteReason_PutSpriteScaled=52:SpriteReason_PutSpriteGreyScaled=53:SpriteReason_RemoveLeftHandWastage=54:SpriteReason_PlotMaskTransformed=55
   12SpriteReason_PutSpriteTransformed=56:SpriteReason_SwitchOutputToSprite=60:SpriteReason_SwitchOutputToMask=61:SpriteReason_ReadSaveAreaSize=62:SpriteReason_BadReasonCode=63:ENDPROC
�>SpriteVar
0�Produced by BasCompress v1.31 (18 Jan 1993)
ݤ_SpriteVar_version=4
"ݤ_hard_initialise_SpriteVar=0
���_SpriteVar(code%,L%):�O%,P%,pass%:pass%=14:O%=code%:P%=0:[OPTpass%:.spNext DCD0:.spName�r(12):.spWidth DCD0:.spHeight DCD0:.spLBit DCD0:.spRBit DCD0:.spImage DCD0:.spTrans DCD0:.spMode DCD0:.spPalette:]:O%=code%:P%=0:[OPTpass%:.saEnd DCD0
�.saNumber DCD0:.saFirst DCD0:.saFree DCD0:.saExten:]:SpriteCBsize=spPalette-spNext:SpriteNameSize=spWidth-spName:MaxSpritePaletteSize=16*8:MaxSpriteWidth=32768:MaxSpriteHeight=32768:SpriteAreaCBsize=saExten-saEnd:SpriteReason_ScreenSave=2
�SpriteReason_ScreenLoad=3:SpriteReason_ReadAreaCB=8:SpriteReason_ClearSprites=9:SpriteReason_LoadSpriteFile=10:SpriteReason_MergeSpriteFile=11:SpriteReason_SaveSpriteFile=12:SpriteReason_ReturnName=13:SpriteReason_GetSprite=14
�SpriteReason_CreateSprite=15:SpriteReason_GetSpriteUserCoords=16:SpriteReason_SelectSprite=24:SpriteReason_DeleteSprite=25:SpriteReason_RenameSprite=26:SpriteReason_CopySprite=27:SpriteReason_PutSprite=28:SpriteReason_CreateMask=29
	�SpriteReason_RemoveMask=30:SpriteReason_InsertRow=31:SpriteReason_DeleteRow=32:SpriteReason_FlipAboutXAxis=33:SpriteReason_PutSpriteUserCoords=34:SpriteReason_AppendSprite=35:SpriteReason_SetPointerShape=36:SpriteReason_ReadSpriteSize=40

�SpriteReason_ReadPixelColour=41:SpriteReason_WritePixelColour=42:SpriteReason_ReadPixelMask=43:SpriteReason_WritePixelMask=44:SpriteReason_InsertCol=45:SpriteReason_DeleteCol=46:SpriteReason_FlipAboutYAxis=47:SpriteReason_PlotMask=48
�SpriteReason_PlotMaskUserCoords=49:SpriteReason_PlotMaskScaled=50:SpriteReason_PaintCharScaled=51:SpriteReason_PutSpriteScaled=52:SpriteReason_PutSpriteGreyScaled=53:SpriteReason_RemoveLeftHandWastage=54:SpriteReason_PlotMaskTransformed=55
�SpriteReason_PutSpriteTransformed=56:SpriteReason_SwitchOutputToSprite=60:SpriteReason_SwitchOutputToMask=61:SpriteReason_ReadSaveAreaSize=62:SpriteReason_BadReasonCode=63:�
�
00000000  0d 00 01 0f f4 3e 53 70  72 69 74 65 56 61 72 0d  |.....>SpriteVar.|
00000010  00 02 30 f4 50 72 6f 64  75 63 65 64 20 62 79 20  |..0.Produced by |
00000020  42 61 73 43 6f 6d 70 72  65 73 73 20 76 31 2e 33  |BasCompress v1.3|
00000030  31 20 28 31 38 20 4a 61  6e 20 31 39 39 33 29 0d  |1 (18 Jan 1993).|
00000040  00 03 1a dd a4 5f 53 70  72 69 74 65 56 61 72 5f  |....._SpriteVar_|
00000050  76 65 72 73 69 6f 6e 3d  34 0d 00 04 22 dd a4 5f  |version=4...".._|
00000060  68 61 72 64 5f 69 6e 69  74 69 61 6c 69 73 65 5f  |hard_initialise_|
00000070  53 70 72 69 74 65 56 61  72 3d 30 0d 00 05 f4 dd  |SpriteVar=0.....|
00000080  f2 5f 53 70 72 69 74 65  56 61 72 28 63 6f 64 65  |._SpriteVar(code|
00000090  25 2c 4c 25 29 3a ea 4f  25 2c 50 25 2c 70 61 73  |%,L%):.O%,P%,pas|
000000a0  73 25 3a 70 61 73 73 25  3d 31 34 3a 4f 25 3d 63  |s%:pass%=14:O%=c|
000000b0  6f 64 65 25 3a 50 25 3d  30 3a 5b 4f 50 54 70 61  |ode%:P%=0:[OPTpa|
000000c0  73 73 25 3a 2e 73 70 4e  65 78 74 20 44 43 44 30  |ss%:.spNext DCD0|
000000d0  3a 2e 73 70 4e 61 6d 65  a4 72 28 31 32 29 3a 2e  |:.spName.r(12):.|
000000e0  73 70 57 69 64 74 68 20  44 43 44 30 3a 2e 73 70  |spWidth DCD0:.sp|
000000f0  48 65 69 67 68 74 20 44  43 44 30 3a 2e 73 70 4c  |Height DCD0:.spL|
00000100  42 69 74 20 44 43 44 30  3a 2e 73 70 52 42 69 74  |Bit DCD0:.spRBit|
00000110  20 44 43 44 30 3a 2e 73  70 49 6d 61 67 65 20 44  | DCD0:.spImage D|
00000120  43 44 30 3a 2e 73 70 54  72 61 6e 73 20 44 43 44  |CD0:.spTrans DCD|
00000130  30 3a 2e 73 70 4d 6f 64  65 20 44 43 44 30 3a 2e  |0:.spMode DCD0:.|
00000140  73 70 50 61 6c 65 74 74  65 3a 5d 3a 4f 25 3d 63  |spPalette:]:O%=c|
00000150  6f 64 65 25 3a 50 25 3d  30 3a 5b 4f 50 54 70 61  |ode%:P%=0:[OPTpa|
00000160  73 73 25 3a 2e 73 61 45  6e 64 20 44 43 44 30 0d  |ss%:.saEnd DCD0.|
00000170  00 06 f2 2e 73 61 4e 75  6d 62 65 72 20 44 43 44  |....saNumber DCD|
00000180  30 3a 2e 73 61 46 69 72  73 74 20 44 43 44 30 3a  |0:.saFirst DCD0:|
00000190  2e 73 61 46 72 65 65 20  44 43 44 30 3a 2e 73 61  |.saFree DCD0:.sa|
000001a0  45 78 74 65 6e 3a 5d 3a  53 70 72 69 74 65 43 42  |Exten:]:SpriteCB|
000001b0  73 69 7a 65 3d 73 70 50  61 6c 65 74 74 65 2d 73  |size=spPalette-s|
000001c0  70 4e 65 78 74 3a 53 70  72 69 74 65 4e 61 6d 65  |pNext:SpriteName|
000001d0  53 69 7a 65 3d 73 70 57  69 64 74 68 2d 73 70 4e  |Size=spWidth-spN|
000001e0  61 6d 65 3a 4d 61 78 53  70 72 69 74 65 50 61 6c  |ame:MaxSpritePal|
000001f0  65 74 74 65 53 69 7a 65  3d 31 36 2a 38 3a 4d 61  |etteSize=16*8:Ma|
00000200  78 53 70 72 69 74 65 57  69 64 74 68 3d 33 32 37  |xSpriteWidth=327|
00000210  36 38 3a 4d 61 78 53 70  72 69 74 65 48 65 69 67  |68:MaxSpriteHeig|
00000220  68 74 3d 33 32 37 36 38  3a 53 70 72 69 74 65 41  |ht=32768:SpriteA|
00000230  72 65 61 43 42 73 69 7a  65 3d 73 61 45 78 74 65  |reaCBsize=saExte|
00000240  6e 2d 73 61 45 6e 64 3a  53 70 72 69 74 65 52 65  |n-saEnd:SpriteRe|
00000250  61 73 6f 6e 5f 53 63 72  65 65 6e 53 61 76 65 3d  |ason_ScreenSave=|
00000260  32 0d 00 07 e6 53 70 72  69 74 65 52 65 61 73 6f  |2....SpriteReaso|
00000270  6e 5f 53 63 72 65 65 6e  4c 6f 61 64 3d 33 3a 53  |n_ScreenLoad=3:S|
00000280  70 72 69 74 65 52 65 61  73 6f 6e 5f 52 65 61 64  |priteReason_Read|
00000290  41 72 65 61 43 42 3d 38  3a 53 70 72 69 74 65 52  |AreaCB=8:SpriteR|
000002a0  65 61 73 6f 6e 5f 43 6c  65 61 72 53 70 72 69 74  |eason_ClearSprit|
000002b0  65 73 3d 39 3a 53 70 72  69 74 65 52 65 61 73 6f  |es=9:SpriteReaso|
000002c0  6e 5f 4c 6f 61 64 53 70  72 69 74 65 46 69 6c 65  |n_LoadSpriteFile|
000002d0  3d 31 30 3a 53 70 72 69  74 65 52 65 61 73 6f 6e  |=10:SpriteReason|
000002e0  5f 4d 65 72 67 65 53 70  72 69 74 65 46 69 6c 65  |_MergeSpriteFile|
000002f0  3d 31 31 3a 53 70 72 69  74 65 52 65 61 73 6f 6e  |=11:SpriteReason|
00000300  5f 53 61 76 65 53 70 72  69 74 65 46 69 6c 65 3d  |_SaveSpriteFile=|
00000310  31 32 3a 53 70 72 69 74  65 52 65 61 73 6f 6e 5f  |12:SpriteReason_|
00000320  52 65 74 75 72 6e 4e 61  6d 65 3d 31 33 3a 53 70  |ReturnName=13:Sp|
00000330  72 69 74 65 52 65 61 73  6f 6e 5f 47 65 74 53 70  |riteReason_GetSp|
00000340  72 69 74 65 3d 31 34 0d  00 08 eb 53 70 72 69 74  |rite=14....Sprit|
00000350  65 52 65 61 73 6f 6e 5f  43 72 65 61 74 65 53 70  |eReason_CreateSp|
00000360  72 69 74 65 3d 31 35 3a  53 70 72 69 74 65 52 65  |rite=15:SpriteRe|
00000370  61 73 6f 6e 5f 47 65 74  53 70 72 69 74 65 55 73  |ason_GetSpriteUs|
00000380  65 72 43 6f 6f 72 64 73  3d 31 36 3a 53 70 72 69  |erCoords=16:Spri|
00000390  74 65 52 65 61 73 6f 6e  5f 53 65 6c 65 63 74 53  |teReason_SelectS|
000003a0  70 72 69 74 65 3d 32 34  3a 53 70 72 69 74 65 52  |prite=24:SpriteR|
000003b0  65 61 73 6f 6e 5f 44 65  6c 65 74 65 53 70 72 69  |eason_DeleteSpri|
000003c0  74 65 3d 32 35 3a 53 70  72 69 74 65 52 65 61 73  |te=25:SpriteReas|
000003d0  6f 6e 5f 52 65 6e 61 6d  65 53 70 72 69 74 65 3d  |on_RenameSprite=|
000003e0  32 36 3a 53 70 72 69 74  65 52 65 61 73 6f 6e 5f  |26:SpriteReason_|
000003f0  43 6f 70 79 53 70 72 69  74 65 3d 32 37 3a 53 70  |CopySprite=27:Sp|
00000400  72 69 74 65 52 65 61 73  6f 6e 5f 50 75 74 53 70  |riteReason_PutSp|
00000410  72 69 74 65 3d 32 38 3a  53 70 72 69 74 65 52 65  |rite=28:SpriteRe|
00000420  61 73 6f 6e 5f 43 72 65  61 74 65 4d 61 73 6b 3d  |ason_CreateMask=|
00000430  32 39 0d 00 09 f1 53 70  72 69 74 65 52 65 61 73  |29....SpriteReas|
00000440  6f 6e 5f 52 65 6d 6f 76  65 4d 61 73 6b 3d 33 30  |on_RemoveMask=30|
00000450  3a 53 70 72 69 74 65 52  65 61 73 6f 6e 5f 49 6e  |:SpriteReason_In|
00000460  73 65 72 74 52 6f 77 3d  33 31 3a 53 70 72 69 74  |sertRow=31:Sprit|
00000470  65 52 65 61 73 6f 6e 5f  44 65 6c 65 74 65 52 6f  |eReason_DeleteRo|
00000480  77 3d 33 32 3a 53 70 72  69 74 65 52 65 61 73 6f  |w=32:SpriteReaso|
00000490  6e 5f 46 6c 69 70 41 62  6f 75 74 58 41 78 69 73  |n_FlipAboutXAxis|
000004a0  3d 33 33 3a 53 70 72 69  74 65 52 65 61 73 6f 6e  |=33:SpriteReason|
000004b0  5f 50 75 74 53 70 72 69  74 65 55 73 65 72 43 6f  |_PutSpriteUserCo|
000004c0  6f 72 64 73 3d 33 34 3a  53 70 72 69 74 65 52 65  |ords=34:SpriteRe|
000004d0  61 73 6f 6e 5f 41 70 70  65 6e 64 53 70 72 69 74  |ason_AppendSprit|
000004e0  65 3d 33 35 3a 53 70 72  69 74 65 52 65 61 73 6f  |e=35:SpriteReaso|
000004f0  6e 5f 53 65 74 50 6f 69  6e 74 65 72 53 68 61 70  |n_SetPointerShap|
00000500  65 3d 33 36 3a 53 70 72  69 74 65 52 65 61 73 6f  |e=36:SpriteReaso|
00000510  6e 5f 52 65 61 64 53 70  72 69 74 65 53 69 7a 65  |n_ReadSpriteSize|
00000520  3d 34 30 0d 00 0a ed 53  70 72 69 74 65 52 65 61  |=40....SpriteRea|
00000530  73 6f 6e 5f 52 65 61 64  50 69 78 65 6c 43 6f 6c  |son_ReadPixelCol|
00000540  6f 75 72 3d 34 31 3a 53  70 72 69 74 65 52 65 61  |our=41:SpriteRea|
00000550  73 6f 6e 5f 57 72 69 74  65 50 69 78 65 6c 43 6f  |son_WritePixelCo|
00000560  6c 6f 75 72 3d 34 32 3a  53 70 72 69 74 65 52 65  |lour=42:SpriteRe|
00000570  61 73 6f 6e 5f 52 65 61  64 50 69 78 65 6c 4d 61  |ason_ReadPixelMa|
00000580  73 6b 3d 34 33 3a 53 70  72 69 74 65 52 65 61 73  |sk=43:SpriteReas|
00000590  6f 6e 5f 57 72 69 74 65  50 69 78 65 6c 4d 61 73  |on_WritePixelMas|
000005a0  6b 3d 34 34 3a 53 70 72  69 74 65 52 65 61 73 6f  |k=44:SpriteReaso|
000005b0  6e 5f 49 6e 73 65 72 74  43 6f 6c 3d 34 35 3a 53  |n_InsertCol=45:S|
000005c0  70 72 69 74 65 52 65 61  73 6f 6e 5f 44 65 6c 65  |priteReason_Dele|
000005d0  74 65 43 6f 6c 3d 34 36  3a 53 70 72 69 74 65 52  |teCol=46:SpriteR|
000005e0  65 61 73 6f 6e 5f 46 6c  69 70 41 62 6f 75 74 59  |eason_FlipAboutY|
000005f0  41 78 69 73 3d 34 37 3a  53 70 72 69 74 65 52 65  |Axis=47:SpriteRe|
00000600  61 73 6f 6e 5f 50 6c 6f  74 4d 61 73 6b 3d 34 38  |ason_PlotMask=48|
00000610  0d 00 0b f3 53 70 72 69  74 65 52 65 61 73 6f 6e  |....SpriteReason|
00000620  5f 50 6c 6f 74 4d 61 73  6b 55 73 65 72 43 6f 6f  |_PlotMaskUserCoo|
00000630  72 64 73 3d 34 39 3a 53  70 72 69 74 65 52 65 61  |rds=49:SpriteRea|
00000640  73 6f 6e 5f 50 6c 6f 74  4d 61 73 6b 53 63 61 6c  |son_PlotMaskScal|
00000650  65 64 3d 35 30 3a 53 70  72 69 74 65 52 65 61 73  |ed=50:SpriteReas|
00000660  6f 6e 5f 50 61 69 6e 74  43 68 61 72 53 63 61 6c  |on_PaintCharScal|
00000670  65 64 3d 35 31 3a 53 70  72 69 74 65 52 65 61 73  |ed=51:SpriteReas|
00000680  6f 6e 5f 50 75 74 53 70  72 69 74 65 53 63 61 6c  |on_PutSpriteScal|
00000690  65 64 3d 35 32 3a 53 70  72 69 74 65 52 65 61 73  |ed=52:SpriteReas|
000006a0  6f 6e 5f 50 75 74 53 70  72 69 74 65 47 72 65 79  |on_PutSpriteGrey|
000006b0  53 63 61 6c 65 64 3d 35  33 3a 53 70 72 69 74 65  |Scaled=53:Sprite|
000006c0  52 65 61 73 6f 6e 5f 52  65 6d 6f 76 65 4c 65 66  |Reason_RemoveLef|
000006d0  74 48 61 6e 64 57 61 73  74 61 67 65 3d 35 34 3a  |tHandWastage=54:|
000006e0  53 70 72 69 74 65 52 65  61 73 6f 6e 5f 50 6c 6f  |SpriteReason_Plo|
000006f0  74 4d 61 73 6b 54 72 61  6e 73 66 6f 72 6d 65 64  |tMaskTransformed|
00000700  3d 35 35 0d 00 0c b1 53  70 72 69 74 65 52 65 61  |=55....SpriteRea|
00000710  73 6f 6e 5f 50 75 74 53  70 72 69 74 65 54 72 61  |son_PutSpriteTra|
00000720  6e 73 66 6f 72 6d 65 64  3d 35 36 3a 53 70 72 69  |nsformed=56:Spri|
00000730  74 65 52 65 61 73 6f 6e  5f 53 77 69 74 63 68 4f  |teReason_SwitchO|
00000740  75 74 70 75 74 54 6f 53  70 72 69 74 65 3d 36 30  |utputToSprite=60|
00000750  3a 53 70 72 69 74 65 52  65 61 73 6f 6e 5f 53 77  |:SpriteReason_Sw|
00000760  69 74 63 68 4f 75 74 70  75 74 54 6f 4d 61 73 6b  |itchOutputToMask|
00000770  3d 36 31 3a 53 70 72 69  74 65 52 65 61 73 6f 6e  |=61:SpriteReason|
00000780  5f 52 65 61 64 53 61 76  65 41 72 65 61 53 69 7a  |_ReadSaveAreaSiz|
00000790  65 3d 36 32 3a 53 70 72  69 74 65 52 65 61 73 6f  |e=62:SpriteReaso|
000007a0  6e 5f 42 61 64 52 65 61  73 6f 6e 43 6f 64 65 3d  |n_BadReasonCode=|
000007b0  36 33 3a e1 0d ff                                 |63:...|
000007b6