Advertisement
12Me21

PTC syntax

Jan 20th, 2016
601
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.45 KB | None | 0 0
  1. CLEAR
  2.  
  3. NEW [slot]
  4.  
  5. LIST {line|ERR}
  6.  
  7. RUN [slot]
  8.  
  9. CONT
  10.  
  11. PROJECT folder$
  12. PROJECT OUT <folder>
  13. PROJECT()
  14.  
  15. BACKTRACE
  16.  
  17. <variable>=expression
  18.  
  19. DIM <array>[dimension1[,...]][,...] 'DIM example[27,4]
  20. DIM <variable>[=expression][,...]
  21.  
  22. VAR <array>[dimension1[,dimension2[,...]]][,...]
  23. VAR <variable>[=expression][,...]
  24. VAR(variable$)
  25.  
  26. SWAP <variable1>,<variable2>
  27.  
  28. INC <variable>[,expression]
  29.  
  30. DEC <variable>[,expression]
  31.  
  32. COPY *
  33.  
  34. SORT [start,length]<index>[,<array2>[,...]] 'max 8
  35.  
  36. RSORT [start,length]<index>[,<array2>[,...]]
  37.  
  38. PUSH <array>,expression
  39.  
  40. POP(<array>)
  41.  
  42. UNSHIFT <array>,expression
  43.  
  44. SHIFT(<array>)
  45.  
  46. FILL <array>,expression[,offset[,length]]
  47.  
  48. @<label>
  49.  
  50. GOTO {@<label>|label$}
  51.  
  52. GOSUB {@<label>|label$}
  53.  
  54. RETURN
  55.  
  56. OUT 'variables (but not commas) can be ommitted)
  57.  
  58. ON <control> {GOTO|GOSUB} @<label0>[,...]
  59.  
  60. IF expression THEN ... [ELSEIF ... [,...]][ELSE ... ][ENDIF]
  61. IF expression GOTO @<label>
  62. multi line *
  63.  
  64. FOR <index>=initial TO final [STEP increment] : ... : NEXT
  65.  
  66. WHILE expression : ... : WEND
  67.  
  68. REPEAT : ... : UNTIL expression
  69.  
  70. CONTINUE
  71.  
  72. BREAK
  73.  
  74. END
  75.  
  76. STOP
  77.  
  78. DEF <name> : ... : END 'statement
  79. DEF <name>([<argument1>[,...]]) : ... : RETURN expression : END 'function
  80. DEF <name> [<argument1>[,...]] OUT [<output1>[,...]] : ... : END 'OUT statement
  81.  
  82. CALL statement$[,argument1[,...]] [OUT <output1>[,...]]
  83. CALL(function$[,argument1[,...]])
  84. CALL {SPRITE|BG}
  85.  
  86. XON {MOTION|EXPAD|MIC}
  87.  
  88. XOFF {MOTION|EXPAD|MIC}
  89.  
  90. READ <variable1>[,...]
  91.  
  92. DATA expression1[,...]
  93.  
  94. RESTORE {@<label>|label$}
  95.  
  96. OPTION {STRICT|DEFINT|TOOL}
  97.  
  98. WAIT frames
  99.  
  100. VSYNC frames
  101.  
  102. '<comment>
  103. REM <comment>
  104.  
  105. KEY number,text$
  106.  
  107. TMREAD [timestring$ ]OUT <h>,<m>,<s>
  108.  
  109. DTREAD [datestring$ ]OUT <y>,<m>,<d>[,<w>]
  110.  
  111. CHKLABEL(label$[,localflag])
  112.  
  113. CHKCALL(function$)
  114.  
  115. CHKVAR(variable$)
  116.  
  117. DIALOG(text$,[selection],[caption$],[timeout]) *
  118. DIALOG * more!!!
  119.  
  120. CLS
  121.  
  122. COLOR foreground[,background]
  123.  
  124. LOCATE [x],[y][,z] 'this means you can do `LOCATE ,y` for example
  125.  
  126. PRINT [expression1[{;|,}[expression2][,...]]
  127. ?[expression1[{;|,}[expression2][,...]]
  128.  
  129. ATTR rotation
  130.  
  131. SCROLL x,y
  132.  
  133. CHKCHR(x,y)
  134.  
  135. INPUT [question$;]<variable>[,...]
  136.  
  137. LINPUT [question$;]<variable$> 'Waits for input until the ENTER key is input LOL
  138.  
  139. INKEY$()
  140.  
  141. FONTDEF [character,{definition$|<array>}]
  142.  
  143. WIDTH size
  144. WIDTH()
  145.  
  146. BUTTON([detection][,terminal])
  147.  
  148. BREPEAT buttonid,start,interval
  149.  
  150. STICK [terminal ]OUT <x>,<y>
  151.  
  152. STICKEX [terminal ]OUT <x>,<y>
  153.  
  154. ACCEL OUT <x>,<y>,<z>
  155.  
  156. GYROV OUT <pitch>,<roll>,<yaw>
  157.  
  158. GYROA OUT <pitch>,<roll>,<yaw>
  159.  
  160. GYROSYNC
  161.  
  162. TOUCH [terminal ]OUT <tchst>,<tchx>,<tchy>
  163.  
  164. MICSTART rate,bits,seconds
  165.  
  166. MICSTOP
  167.  
  168. MICDATA(position)
  169.  
  170. MICSAVE [[position,]number,]<array>
  171.  
  172. FILES [type$]
  173. FILES [type$,]<array$>
  174.  
  175. LOAD name$[,displayflag]
  176. LOAD txtname$[,displayflag] OUT <text$>
  177. LOAD(txtname$[,displayflag])
  178. LOAD datname$,<array>[,displayflag]
  179.  
  180. SAVE file$
  181. SAVE txtfile$,text$
  182. SAVE datfile$,<array>
  183.  
  184. RENAME file$,newname$
  185.  
  186. DELETE file$
  187.  
  188. EXEC {file$|slot}
  189.  
  190. USE slot
  191.  
  192. CHKFILE(file$)
  193.  
  194. ##Wireless communication##
  195.  
  196. MPSTART maximumusers,password$
  197.  
  198. MPEND
  199.  
  200. MPSEND string$
  201.  
  202. MPRECV OUT <sid>,<rcv$> *
  203.  
  204. MPNAME$(terminal)
  205.  
  206. MPGET(terminal,number) *
  207.  
  208. MPSET number,integer *
  209.  
  210. XSCREEN mode[,sprites,bg]
  211.  
  212. DISPLAY screen
  213. DISPLAY()
  214.  
  215. VISIBLE text,graphics,bg,sprite 'in PTC it was 1000x more useful, since you could turn off the console text without turning off all text.
  216.  
  217. BACKCOLOR color
  218. BACKCOLOR()
  219.  
  220. ACLS
  221.  
  222. FADE color[,time]
  223. FADE()
  224.  
  225. FADECHK()
  226.  
  227. ##GRAPHICS##
  228.  
  229. GPAGE display,manipulation
  230. GPAGE OUT <display>,<manipulation>
  231.  
  232. GCOLOR color
  233. GCOLOR OUT <color>
  234.  
  235. RGB([alpha,]red,green,blue)
  236. RGBREAD color OUT <alpha>,<red>,<green>,<blue>
  237.  
  238. GCLIP mode,x1,y1,x2,y2
  239.  
  240. GPRIO z
  241.  
  242. GCLS [color]
  243.  
  244. GSPOIT(x,y)
  245.  
  246. GPSET x,y[,color]
  247.  
  248. GLINE x1,y1,x2,y2[,color]
  249.  
  250. GCIRCLE x,y,radius[,color]
  251. GCIRCLE x,y,radius,start,end[flag[color]] *
  252.  
  253. GFILL x1,y1,x2,y2[,color]
  254.  
  255. GPAINT x,y[,color[,border]]
  256.  
  257. GCOPY [source,]x1,y1,x2,y2,xdest,ydest,mode
  258.  
  259. GSAVE [source,][x,y,width,height,]<array>,colorconvflag
  260.  
  261. GLOAD [x,y,width,height,]<array>,{colorconvflag|<palettearray>},mode
  262.  
  263. GTRI x1,y1,x2,y2,x3,y3[,color]
  264.  
  265. GPUTCHR x,y,{string$|code},xscale,yscale[,color]
  266.  
  267. ##SPRITES##
  268.  
  269. SPPAGE page
  270. SPPAGE()
  271.  
  272. SPCLIP [x1,y1,x2,y2]
  273.  
  274. SPDEF number,u,v[,width,height[,x0,y0]][,attribute]
  275. SPDEF [{<array>|label$}]
  276. SPDEF number OUT <u>,<v>[,<w>,<h>[,<x0>,<y0>]][,<attribute>]
  277. SPDEF number,source,[u],[v],[width],[height],[x0],[y0],[attribute]
  278.  
  279. SPSET number,sprite
  280. SPSET number,u,v[,width,height],attribute
  281. SPSET [minimum,maximum,]sprite OUT <number>
  282. SPSET [minimum,maximum,]u,v,width,height,attribute OUT <number>
  283.  
  284. SPCLR [number]
  285.  
  286. SPSHOW number
  287.  
  288. SPHIDE number
  289.  
  290. SPHOME number,x,y
  291. SPHOME number OUT <x>,<y>
  292.  
  293. SPOFS number,x,y[,z]
  294. SPOFS number OUT <x>,<y>[,<z>]
  295.  
  296. SPROT number,angle
  297. SPROT(number)
  298. SPROT number OUT <angle>
  299.  
  300. SPSCALE number,xscale,yscale
  301. SPSCALE number OUT <xscale>,<yscale>
  302.  
  303. SPCOLOR number,color
  304. SPCOLOR number OUT <color>
  305.  
  306. SPCHR number,sprite
  307. SPCHR number OUT <sprite>
  308. SPCHR number,[u],[v],[width],[height],[attribute]
  309. SPCHR number OUT <u>,<v>[,<width>,<height>[,<attribute>]]
  310.  
  311. SPLINK number,link
  312.  
  313. SPUNLINK number
  314.  
  315. SPANIM number,{target|target$},<array>[,loops]
  316. SPANIM number,{target|target$},label$[,loops]
  317. SPANIM number,{target|target$},time1,item11[,item12][,time2,item21[,item22]][,...][,loops]
  318.  
  319. SPSTOP [number]
  320.  
  321. SPSTART [number]
  322.  
  323. SPCHK(number)
  324.  
  325. SPVAR number,index,expression
  326. SPVAR(number,index)
  327. SPVAR number,index OUT <variable>
  328.  
  329. SPCOL number[,scaleflag]
  330. SPCOL number,[scaleflag],mask
  331. SPCOL number,x1,y1,width,height,[scaleflag],mask
  332. SPCOL number OUT <scaleflag>[,<mask>]
  333. SPCOL number OUT <x1>,<y1>,<width>,<height>[,<scaleflag>[,<mask>]]
  334.  
  335. SPCOLVEC number[,vx,vy]
  336.  
  337. SPHITSP(number1[,{number2|minimum,maximum}])
  338.  
  339. SPHITRC([number,]x1,y1,width,height[,[mask],vx,vy])
  340.  
  341. SPHITINFO OUT <time>[,<x1>,<y1>[,<vx1>,<vy1>],<x2>,<y2>[,<vx2>,<vy2>]
  342.  
  343. SPFUNC number,{@label|<function>}
  344.  
  345. SPUSED(number)
  346.  
  347. ##BG## 'oh no
  348.  
  349. ##SOUND##
  350.  
  351. BEEP [sound[,pitch[,volume[,pan]]]]
  352.  
  353. BGMCHK([channel])
  354.  
  355. BGMCLEAR [customsong]
  356.  
  357. BGMPLAY [channel,]song[,volume] 'channel or both
  358. BGMPLAY mml$
  359.  
  360. BGMSET song,mml$
  361. BGMSETD song,label$
  362.  
  363. BGMVAR channel,index,expression
  364. BGMVAR(channel,index)
  365.  
  366. BGMSTOP {[channel[,time]]|-1}
  367.  
  368. BGMVOL [channel,]volume
  369.  
  370. WAVSET number,attack,decay,sustain,release,waveform$[,pitch]
  371. WAVSETA number,attack,decay,sustain,release,<array>[,pitch][,start][,end]
  372.  
  373. EFCOFF
  374.  
  375. EFCON
  376.  
  377. EFCSET type
  378. EFCSET Initial_reflection_time,Reverberation_sound_delay_time,Reverberation_sound_decay_time,Reverberation_sound_filter_coefficient_1,Reverberation_sound_filter_coefficient_2,Initial_reflection_sound_gain,Reverberation_sound_gain *************
  379.  
  380. EFCWET beep,bgm,talk
  381.  
  382. TALK speech$
  383.  
  384. TALKCHK()
  385.  
  386. TALKSTOP
  387.  
  388. ##MATHEMATICS##
  389.  
  390. FLOOR(number)
  391.  
  392. ROUND(number)
  393.  
  394. CEIL(number)
  395.  
  396. ABS(number)
  397.  
  398. SGN(number)
  399.  
  400. MIN({<array>|number1,number2[,...]})
  401.  
  402. MAX({<array>|number1,number2[,...]})
  403.  
  404. RND([seedtype,]range)
  405.  
  406. RNDF([seedtype])
  407.  
  408. RANDOMIZE seedtype[,seed]
  409.  
  410. SQR(number)
  411.  
  412. EXP(exponent)
  413.  
  414. LOG(number,base)
  415.  
  416. POW(base,exponent) 'fuck this
  417.  
  418. PI()
  419.  
  420. RAD(degrees)
  421.  
  422. DEG(radians)
  423.  
  424. SIN(angle)
  425.  
  426. COS(angle)
  427.  
  428. TAN(angle)
  429.  
  430. ASIN(number)
  431.  
  432. ACOS(number)
  433.  
  434. ATAN({number|x,y})
  435.  
  436. SINH(number)
  437.  
  438. COSH(number)
  439.  
  440. TANH(number)
  441.  
  442. CLASSIFY(number)
  443.  
  444. ##OPERATIONS ON STRINGS##
  445.  
  446. ASC(character$)
  447.  
  448. CHR$(code)
  449.  
  450. VAL(number$)
  451.  
  452. CHR$(number[,digits])
  453.  
  454. HEX$(number[,digits])
  455.  
  456. FORMAT$(formatstring$,{string$|number}[,...]) *
  457.  
  458. LEN({string$|<array>}
  459.  
  460. MID$(string$,start,length)
  461.  
  462. LEFT$(string$,length)
  463.  
  464. RIGHT$(string$,length)
  465.  
  466. INSTR([start,]string$,query$)
  467.  
  468. SUBST$(string$,start,length,substitute$)
  469.  
  470. ##SOURCE CODE MANIPULATION##
  471.  
  472. PRGEDIT slot[,line]
  473.  
  474. PRGGET$()
  475.  
  476. PRGSET line$
  477.  
  478. PRGINS line$,flag
  479.  
  480. PRGDEL [lines]
  481.  
  482. PRGSIZE([slot[,unit]])
  483.  
  484. PRGNAME$([slot])
  485.  
  486. ##BIT OPERATIONS ## 'placed between 2 expressions
  487.  
  488. MOD
  489.  
  490. DIV
  491.  
  492. AND
  493.  
  494. OR
  495.  
  496. XOR
  497.  
  498. <<
  499.  
  500. >>
  501.  
  502. ##CONSTANTS##
  503.  
  504. '--- Generic
  505. #ON '1
  506. #OFF '0
  507. #YES '1
  508. #NO '0
  509. #TRUE '1
  510. #FALSE '0
  511. '--- RGB
  512. #AQUA '&HFF00F8F8
  513. #BLACK '&HFF000000
  514. #BLUE '&HFF0000FF
  515. #CYAN '&HFF0000F8
  516. #FUCHSIA '&HFFF800F8
  517. #GRAY '&HFF808080
  518. #GREEN '&HFF008000
  519. #LIME '&HFF00F800
  520. #MAGENTA '&HFFF800F8
  521. #MAROON '&HFF800000
  522. #NAVY '&HFF000080
  523. #OLIVE '&HFF808000
  524. #PURPLE '&HFF800080
  525. #RED '&HFFF80000
  526. #SILVER '&HFFC0C0C0
  527. #TEAL '&HFF008080
  528. #WHITE '&HFFF8F8F8
  529. #YELLOW '&HFFF8F800
  530. '--- TEXTCOLOR
  531. #TBLACK '1
  532. #TMAROON '2
  533. #TRED '3
  534. #TGREEN '4
  535. #TLIME '5
  536. #TOLIVE '6
  537. #TYELLOW '7
  538. #TNAVY '8
  539. #TBLUE '9
  540. #TPURPLE '10
  541. #TMAGENTA '11
  542. #TTEAL '12
  543. #TCYAN '13
  544. #TGRAY '14
  545. #TWHITE '15
  546. '--- BUTTON
  547. #UP '&H0001
  548. #DOWN '&H0002
  549. #LEFT '&H0004
  550. #RIGHT '&H0008
  551. #A '&H0010
  552. #B '&H0020
  553. #X '&H0040
  554. #Y '&H0080
  555. #L '&H0100
  556. #R '&H0200
  557. #ZL '&H0800
  558. #ZR '&H1000
  559. '--- ATTR
  560. #TROT0 '&H00
  561. #TROT90 '&H01
  562. #TROT180 '&H02
  563. #TROT270 '&H03
  564. #TREVH '&H04
  565. #TREVV '&H08
  566. '---SPSET/SPCHR ATTR
  567. #SPSHOW '&H01, Display
  568. #SPROT0 '&H00, Rotate by 0 degree
  569. #SPROT90 '&H02, Rotate by 90 degrees
  570. #SPROT180 '&H04, Rotate by 180 degrees
  571. #SPROT270 '&H06, Rotate by 270 degrees
  572. #SPREVH '&H08, Right/left
  573. #SPREVV '&H10, Up/down
  574. #SPADD '&H20, Additive synthesis
  575. '--- BG ATTRE
  576. #BGROT0 '&H0000
  577. #BGROT90 '&H0800
  578. #BGROT180 '&H1000
  579. #BGROT270 '&H2000
  580. #BGREVH '&H4000
  581. #BGREVV '&H8000
  582. '--- SPCHK/BGCHK
  583. #CHKXY '&H01
  584. #CHKZ '&H02
  585. #CHKUV '&H04
  586. #CHKI '&H08
  587. #CHKR '&H10
  588. #CHKS '&H20
  589. #CHKC '&H40
  590. #CHKV '&H80
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement