Home > CBM > BASIC > Keywords > Rsppos
180 Subpages: (divide), (equal), (less), (minus), (more), (multiply), (plus), (power), Abs, And, Append, Asc, Atn, Auto, Backup, Bank, Begin, Bend, Bload, Boot, Box, Bsave, Bump, Catalog, Char, Chr, Circle, Close, Clr, Cmd, Collect, Collision, Color, Concat, Cont, Copy, Cos, Data, Dclear, Dclose, Dec, Def, Delete, Dim, Directory, Dispose, Dload, Do, Dopen, Draw, Ds, Ds string, Dsave, Dverify, El, Else, End, Envelope, Er, Err, Exit, Exp, Fast, Fetch, Filter, Fn, For, Fre, Get, Get num, Getkey, Go, Gosub, Goto, Graphic, Gshape, Header, Help, Hex, If, Input, Input num, Instr, Int, Joy, Key, Left, Len, Let, List, Load, Locate, Log, Loop, Mid, Monitor, Movspr, New, Next, Not, Off, On, Open, Or, Paint, Peek, Pen, Pi, Play, Pointer, Poke, Pos, Pot, Print, Print num, Pudef, Quit, Rclr, Rdot, Read, Record, Rem, Rename, Renumber, Restore, Resume, Return, Rgr, Right, Rlum, Rnd, Rreg, Rspcolor, Rsprite, Run, Rwindow, Save, Scale, Scnclr, Scratch, Sgn, Sin, Sleep, Slow, Sound, Spc, Sprcolor, Sprdef, Sprite, Sprsav, Sqr, Sshape, St, Stash, Step, Stop, Str, Swap, Sys, Tab, Tan, Tempo, Then, Ti, Ti string, To, Trap, Troff, Tron, Until, Using, Usr, Val, Verify, Vol, Wait, While, Width, Window, Xor

KeywordAbbreviationToken (hex)Version(s)Classification
RSPPOSR{Shift+S}CE 057.0Function

 Syntax 
RSPPOS ( sprite , info )
 
ParametersTypeLegal Value(s)Note(s)
spriteUnsigned Byte1 ~ 8  
infoUnsigned Byte
  1. get X ordinate
  2. get Y ordinate
  3. get speed
 
ReturnsTypeValue(s)Note(s)
valueInteger
0 to 511
 
 Purpose 
Return information about the position/movement of a sprite.
 
 Remarks 
The RSPPOS function (mostly) complements the MOVSPR command/statment.  RSPPOS can return a SPRITE's current X ordinate, Y ordinate, or speed.  Unfortunately, RSPPOS will not tell you a SPRITE's direction.  If you need the direction, then you will need to take a PEEK at some secret variables and perform a rectangular to polar conversion.
 
Programming note: if a sprite has been set in motion with a MOVSPR #speed statement, then by the time BASIC processes an X or Y ordinate, the sprite may have moved several pixels.
 
If sprite or info is omitted, either is an invalid expression, or extra parameters are given, then SYNTAX ERROR occurs.  If either parameter is not numeric, TYPE MISMATCH ERROR occurs; you may manually convert strings with VAL.  Any floating-point parameter is automatically converted with INT.  If the result is not a Legal Value (see table above), then ILLEGAL QUANTITY ERROR occurs.
 
Examples (after using SPRDEF):
PRINT RSPPOS("1",0)

?TYPE MISMATCH ERROR 
READY.
PRINT RSPPOS(1,0) :REM sprit 1 X ordinate
 264 

READY.
PRINT RSPPOS(1,1) :REM sprite 1 Y ordinate
 74

READY.
PRINT RSPPOS(1,2) :REM sprite 1 speed
 0

READY.
 
 Compare With 
 
 Contrast With 
 
 See Also 

© H2Obsession, 2014