Advertisement
ZoriaRPG

Comparing Dir4Angle to Dir4ToAngle, 1: ZASM Output Dir4Angle

Jul 23rd, 2017
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.39 KB | None | 0 0
  1. import "std.zh"
  2.  
  3. //Returns angle of the given direction.
  4. int Dir4Angle(int dir){
  5.     dir &=7;
  6.     if (dir==DIR_UP) return 90;
  7.     if (dir==DIR_DOWN) return 270;
  8.     if (dir==DIR_LEFT) return 180;
  9.     if (dir==DIR_RIGHT) return 0;
  10.     return -1;
  11. }
  12. ffc script f{
  13.     void run(){
  14.         int x = Dir4Angle(DIR_LEFT);
  15.     }
  16. }
  17.  
  18. f
  19.  SETV d2,0
  20.  PUSHR d2
  21.  PUSHR d2
  22.  SETR d3,REFFFC
  23.  PUSHR d3
  24.  SETR d4,SP
  25.  PUSHR d4
  26.  SETV d2,13
  27.  PUSHR d2
  28.  SETV d2,2
  29.  PUSHR d2
  30.  GOTO 21
  31.  POP d4
  32.  SETR d6,d4
  33.  ADDV d6,1
  34.  STOREI d2,d6
  35.  SETV d3,0
  36.  POP d3
  37.  POP d3
  38.  QUIT
  39.  SETV d2,0
  40.  SETR d4,SP
  41.  SETR d6,d4
  42.  ADDV d6,0
  43.  LOADI d2,d6
  44.  PUSHR d2
  45.  SETV d2,7
  46.  POP d3
  47.  ANDR d2,d3
  48.  SETR d6,d4
  49.  ADDV d6,0
  50.  STOREI d2,d6
  51.  SETR d6,d4
  52.  ADDV d6,0
  53.  LOADI d2,d6
  54.  PUSHR d2
  55.  SETV d2,0
  56.  POP d3
  57.  COMPARER d2,d3
  58.  SETTRUE d2
  59.  COMPAREV d2,0
  60.  GOTOTRUE 45
  61.  SETV d2,90
  62.  GOTO 87
  63.  SETV d2,0
  64.  SETR d6,d4
  65.  ADDV d6,0
  66.  LOADI d2,d6
  67.  PUSHR d2
  68.  SETV d2,1
  69.  POP d3
  70.  COMPARER d2,d3
  71.  SETTRUE d2
  72.  COMPAREV d2,0
  73.  GOTOTRUE 58
  74.  SETV d2,270
  75.  GOTO 87
  76.  SETV d2,0
  77.  SETR d6,d4
  78.  ADDV d6,0
  79.  LOADI d2,d6
  80.  PUSHR d2
  81.  SETV d2,2
  82.  POP d3
  83.  COMPARER d2,d3
  84.  SETTRUE d2
  85.  COMPAREV d2,0
  86.  GOTOTRUE 71
  87.  SETV d2,180
  88.  GOTO 87
  89.  SETV d2,0
  90.  SETR d6,d4
  91.  ADDV d6,0
  92.  LOADI d2,d6
  93.  PUSHR d2
  94.  SETV d2,3
  95.  POP d3
  96.  COMPARER d2,d3
  97.  SETTRUE d2
  98.  COMPAREV d2,0
  99.  GOTOTRUE 84
  100.  SETV d2,0
  101.  GOTO 87
  102.  SETV d2,0
  103.  SETV d2,-1
  104.  GOTO 87
  105.  SETV d3,0
  106.  POP d3
  107.  POP d3
  108.  GOTOR d3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement