PDA

View Full Version : Documentation



Archangel
03-26-2009, 12:41 PM
I'm just curious but, when are you going to update the help documentation, even though it's become obsolete since we now have an official ZCWiki.

Also is it possible to get an up to date list of the Zasm commands?

Joe123
03-26-2009, 01:26 PM
SETV, //0x0000
SETR, //0x0001
ADDR, //0x0002
ADDV, //0x0003
SUBR, //0x0004
SUBV, //0x0005
MULTR, //0x0006
MULTV, //0x0007
DIVR, //0x0008
DIVV, //0x0009
WAITFRAME, //0x000A
GOTO, //0x000B
CHECKTRIG, //0x000C
WARP, //0x000D
COMPARER, //0x000E
COMPAREV, //0x000F
GOTOTRUE, //0x0010
GOTOFALSE, //0x0011
GOTOLESS, //0x0012
GOTOMORE, //0x0013
LOAD1, //0x0014
LOAD2, //0x0015
SETA1, //0x0016
SETA2, //0x0017
QUIT, //0x0018
SINR, //0x0019
SINV, //0x001A
COSR, //0x001B
COSV, //0x001C
TANR, //0x001D
TANV, //0x001E
MODR, //0x001F
MODV, //0x0020
ABSR, //0x0021
MINR, //0x0022
MINV, //0x0023
MAXR, //0x0024
MAXV, //0x0025
RNDR, //0x0026
RNDV, //0x0027
FACTORIAL, //0x0028
POWERR, //0x0029
POWERV, //0x002A
IPOWERR, //0x002B
IPOWERV, //0x002C
ANDR, //0x002D
ANDV, //0x002E
ORR, //0x002F
ORV, //0x0030
XORR, //0x0031
XORV, //0x0032
NANDR, //0x0033
NANDV, //0x0034
NORR, //0x0035
NORV, //0x0036
XNORR, //0x0037
XNORV, //0x0038
NOT, //0x0039
LSHIFTR, //0x003A
LSHIFTV, //0x003B
RSHIFTR, //0x003C
RSHIFTV, //0x003D
TRACER, //0x003E
TRACEV, //0x003F
TRACENL, //0x0040
LOOP, //0x0041
PUSHR, //0x0042
PUSHV, //0x0043
POP, //0x0044
ENQUEUER, //0x0045 //NOT IMPLEMENTED
ENQUEUEV, //0x0046 //NOT IMPLEMENTED
DEQUEUE, //0x0047 //NOT IMPLEMENTED
PLAYSOUNDR, //0x0048
PLAYSOUNDV, //0x0049
LOADLWEAPONR, //0x004A
LOADLWEAPONV, //0x004B
LOADITEMR, //0x004C
LOADITEMV, //0x004D
LOADNPCR, //0x004E
LOADNPCV, //0x004F
CREATELWEAPONR, //0x0050
CREATELWEAPONV, //0x0051
CREATEITEMR, //0x0052
CREATEITEMV, //0x0053
CREATENPCR, //0x0054
CREATENPCV, //0x0055
LOADI, //0x0056
STOREI, //0x0057
GOTOR, //0x0058
SQROOTV, //0x0059
SQROOTR, //0x005A
CREATEEWEAPONR, //0x005B
CREATEEWEAPONV, //0x005C
PITWARP, //0x005D
WARPR, //0x005E
PITWARPR, //0x005F
CLEARSPRITESR, //0x0060
CLEARSPRITESV, //0x0061
RECTR, //0x0062
CIRCLER, //0x0063
ARCR, //0x0064
ELLIPSER, //0x0065
LINER, //0x0066
PUTPIXELR, //0x0067
DRAWTILER, //0x0068
DRAWCOMBOR, //0x0069
ELLIPSE2, //0x006A
SPLINE, //0x006B
FLOODFILL, //0x006C
COMPOUNDR, //0x006D
COMPOUNDV, //0x006E
MSGSTRR, //0x006F
MSGSTRV, //0x0070
ISVALIDITEM, //0x0071
ISVALIDNPC, //0x0072
PLAYMIDIR, //0x0073
PLAYMIDIV, //0x0074
COPYTILEVV, //0x0075
COPYTILEVR, //0x0076
COPYTILERV, //0x0077
COPYTILERR, //0x0078
SWAPTILEVV, //0x0079
SWAPTILEVR, //0x007A
SWAPTILERV, //0x007B
SWAPTILERR, //0x007C
CLEARTILEV, //0x007D
CLEARTILER, //0x007E
OVERLAYTILEVV, //0x007F
OVERLAYTILEVR, //0x0080
OVERLAYTILERV, //0x0081
OVERLAYTILERR, //0x0082
FLIPROTTILEVV, //0x0083
FLIPROTTILEVR, //0x0084
FLIPROTTILERV, //0x0085
FLIPROTTILERR, //0x0086
GETTILEPIXELV, //0x0087
GETTILEPIXELR, //0x0088
SETTILEPIXELV, //0x0089
SETTILEPIXELR, //0x008A
SHIFTTILEVV, //0x008B
SHIFTTILEVR, //0x008C
SHIFTTILERV, //0x008D
SHIFTTILERR, //0x008E
ISVALIDLWPN, //0x008F
ISVALIDEWPN, //0x0090
LOADEWEAPONR, //0x0091
LOADEWEAPONV, //0x0092
ALLOCATEMEMR, //0x0093
ALLOCATEMEMV, //0x0094
DECLARE, //0x0095
DEALLOCATEMEMR, //0x0096
DEALLOCATEMEMV, //0x0097
WAITDRAW, //0x0098
ARCTANR, //0x0099
LWPNUSESPRITER, //0x09A
LWPNUSESPRITEV, //0x09B
EWPNUSESPRITER, //0x09C
EWPNUSESPRITEV, //0x09D
LOADITEMDATAR, //0x09E
LOADITEMDATAV, //0x09F
BITNOT, //0x00A0
LOG10, //0x00A1
LOGE, //0x00A2
ISSOLID, //0x00A3
LAYERSCREEN, //0x00A4
LAYERMAP, //0x00A5

#define DATA 11
#define FCSET 12
#define DELAY 13
#define FX 14
#define FY 15
#define XD 16
#define YD 17
#define XD2 18
#define YD2 19
#define LINKX 20
#define LINKY 21
#define LINKDIR 22
#define LINKHP 23
#define LINKMP 24
#define LINKMAXHP 25
#define LINKMAXMP 26
#define LINKACTION 27
#define INPUTSTART 28
#define INPUTUP 29
#define INPUTDOWN 30
#define INPUTLEFT 31
#define INPUTRIGHT 32
#define INPUTA 33
#define INPUTB 34
#define INPUTL 35
#define INPUTR 36
#define SDD 37 // 8 of these
#define COMBODD 38 // 176 of these
#define COMBOCD 39 // 176 of these
#define COMBOFD 40 // 176 of these
#define REFFFC 41
#define REFITEM 42
#define ITEMCOUNT 43
#define ITEMX 44
#define ITEMY 45
#define ITEMDRAWTYPE 46
#define ITEMID 47
#define ITEMTILE 48
#define ITEMCSET 49
#define ITEMFLASHCSET 50
#define ITEMFRAMES 51
#define ITEMFRAME 52
#define ITEMASPEED 53
#define ITEMDELAY 54
#define ITEMFLASH 55
#define ITEMFLIP 56
#define ITEMEXTEND 57
#define ITEMCLASSFAMILY 58
#define ITEMCLASSFAMTYPE 59
#define ITEMCLASSAMOUNT 60
#define ITEMCLASSMAX 61
#define ITEMCLASSSETMAX 62
#define ITEMCLASSSETGAME 63
#define ITEMCLASSCOUNTER 64
#define REFITEMCLASS 65
#define LINKZ 66
#define LINKJUMP 67
#define ITEMZ 68
#define ITEMJUMP 69
#define NPCZ 70
#define NPCJUMP 71
#define WHAT_NO_72 72 // What, no 72?
#define LINKSWORDJINX 73
#define LINKITEMJINX 74
#define COMBOID 75
#define COMBOTD 76
#define COMBOSD 77
#define CURSCR 78
#define CURMAP 79
#define CURDMAP 80
#define GAMEDEATHS 81
#define GAMECHEAT 82
#define GAMETIME 83
#define GAMEHASPLAYED 84
#define GAMETIMEVALID 85
#define GAMEGUYCOUNT 86
#define GAMECONTSCR 87
#define GAMECONTDMAP 88
#define GAMECOUNTERD 89
#define GAMEMCOUNTERD 90
#define GAMEDCOUNTERD 91
#define GAMEGENERICD 92
#define GAMEITEMSD 93
#define GAMELITEMSD 94
#define GAMELKEYSD 95
#define SCREENSTATED 96
#define SCREENSTATEDD 97
#define SDDD 98
#define FFFLAGSD 99
#define FFTWIDTH 100
#define FFTHEIGHT 101
#define FFCWIDTH 102
#define FFCHEIGHT 103
#define FFLINK 104
#define LINKITEMD 105
#define REFNPC 106
#define NPCCOUNT 107
#define NPCX 108
#define NPCY 109
#define NPCDIR 110
#define NPCRATE 111
#define NPCFRAMERATE 112
#define NPCHALTRATE 113
#define NPCDRAWTYPE 114
#define NPCHP 115
#define NPCDP 116
#define NPCWDP 117
#define NPCOTILE 118
#define NPCWEAPON 119
#define NPCITEMSET 120
#define NPCCSET 121
#define NPCBOSSPAL 122
#define NPCBGSFX 123
#define NPCEXTEND 124
#define SCRDOORD 125
#define CURDSCR 126
#define LINKHELD 127
#define NPCSTEP 128
#define ITEMOTILE 129
#define INPUTMOUSEX 130
#define INPUTMOUSEY 131
#define QUAKE 132
#define WAVY 133
#define NPCID 134
#define ITEMCLASSUSESOUND 135
#define INPUTMOUSEZ 136
#define INPUTMOUSEB 137
#define REFLWPN 138
#define LWPNCOUNT 139
#define LWPNX 140
#define LWPNY 141
#define LWPNDIR 142
#define LWPNSTEP 143
#define LWPNANGULAR 144
#define LWPNANGLE 145
#define LWPNDRAWTYPE 146
#define LWPNPOWER 147
#define LWPNDEAD 148
#define LWPNID 149
#define LWPNTILE 150
#define LWPNCSET 151
#define LWPNFLASHCSET 152
#define LWPNFRAMES 153
#define LWPNFRAME 154
#define LWPNASPEED 155
#define LWPNFLASH 156
#define LWPNFLIP 157
#define LWPNEXTEND 158
#define LWPNOTILE 159
#define LWPNOCSET 160
#define LWPNZ 161
#define LWPNJUMP 162
#define REFEWPN 163
#define EWPNX 164
#define EWPNY 165
#define EWPNDIR 166
#define EWPNSTEP 167
#define EWPNANGULAR 168
#define EWPNANGLE 169
#define EWPNDRAWTYPE 170
#define EWPNPOWER 171
#define EWPNDEAD 172
#define EWPNID 173
#define EWPNTILE 174
#define EWPNCSET 175
#define EWPNFLASHCSET 176
#define EWPNFRAMES 177
#define EWPNFRAME 178
#define EWPNASPEED 179
#define EWPNFLASH 180
#define EWPNFLIP 181
#define EWPNCOUNT 182
#define EWPNEXTEND 183
#define EWPNOTILE 184
#define EWPNOCSET 185
#define EWPNZ 186
#define EWPNJUMP 187
#define COMBODDM 188 // 176 of these
#define COMBOCDM 189 // 176 of these
#define COMBOFDM 190 // 176 of these
#define COMBOIDM 191 // 176 of these
#define COMBOTDM 192 // 176 of these
#define COMBOSDM 193 // 176 of these
#define SCRIPTRAM 194
#define GLOBALRAM 195
#define SCRIPTRAMD 196
#define GLOBALRAMD 197
#define SAVERAM 198
#define LWPNHXOFS 199
#define LWPNHYOFS 200
#define LWPNXOFS 201
#define LWPNYOFS 202
#define LWPNZOFS 203
#define LWPNHXSZ 204
#define LWPNHYSZ 205
#define LWPNHZSZ 206
#define EWPNHXOFS 207
#define EWPNHYOFS 208
#define EWPNXOFS 209
#define EWPNYOFS 210
#define EWPNZOFS 211
#define EWPNHXSZ 212
#define EWPNHYSZ 213
#define EWPNHZSZ 214
#define NPCHXOFS 215
#define NPCHYOFS 216
#define NPCXOFS 217
#define NPCYOFS 218
#define NPCZOFS 219
#define NPCHXSZ 220
#define NPCHYSZ 221
#define NPCHZSZ 222
#define ITEMHXOFS 223
#define ITEMHYOFS 224
#define ITEMXOFS 225
#define ITEMYOFS 226
#define ITEMZOFS 227
#define ITEMHXSZ 228
#define ITEMHYSZ 229
#define ITEMHZSZ 230
#define LWPNTXSZ 231
#define LWPNTYSZ 232
#define EWPNTXSZ 233
#define EWPNTYSZ 234
#define NPCTXSZ 235
#define NPCTYSZ 236
#define ITEMTXSZ 237
#define ITEMTYSZ 238
#define LINKHXOFS 239
#define LINKHYOFS 240
#define LINKXOFS 241
#define LINKYOFS 242
#define LINKZOFS 243
#define LINKHXSZ 244
#define LINKHYSZ 245
#define LINKHZSZ 246
#define LINKTXSZ 247
#define LINKTYSZ 248
#define LINKDRUNK 249
#define NPCTILE 250
#define LWPNBEHIND 251
#define EWPNBEHIND 252
#define SDDDD 253
#define CURLEVEL 254
#define ITEMPICKUP 255
#define INPUTMAP 256
#define LIT 257
#define INPUTEX1 258
#define INPUTEX2 259
#define INPUTEX3 260
#define INPUTEX4 261
#define INPUTPRESSSTART 262
#define INPUTPRESSUP 263
#define INPUTPRESSDOWN 264
#define INPUTPRESSLEFT 265
#define INPUTPRESSRIGHT 266
#define INPUTPRESSA 267
#define INPUTPRESSB 268
#define INPUTPRESSL 269
#define INPUTPRESSR 270
#define INPUTPRESSEX1 271
#define INPUTPRESSEX2 272
#define INPUTPRESSEX3 273
#define INPUTPRESSEX4 274
#define LWPNMISCD 275 // 8 of these
#define EWPNMISCD 276 // 8 of these
#define NPCMISCD 277 // 8 of these
#define ITEMMISCD 278 // 8 of these
#define FFMISCD 279 // 8 of these

Top is functions, bottom is variables.
Don't ask me how they work though.

Revfan9
03-26-2009, 06:50 PM
I can say what most of these do with the exception of some of the newer ones. For example, wtf does "DEFINE" do? Can we FINALLY have real variables rather than manipulating registers?

lucas92
03-26-2009, 08:03 PM
#define is C language... I doubt that it has anything to do with ASM like language.

Archangel
03-26-2009, 10:11 PM
What about documentation?

Gleeok
03-27-2009, 01:13 AM
What I wanna know is; WTF happened to 72?! :scared:

_L_
03-27-2009, 02:14 AM
Incomplete documentation exists at http://shardstorm.com/ZCwiki/ZASM_Language_Reference. It'd be great if someone would update it to include the more recently added commands.

Joe123
03-27-2009, 09:58 AM
WHAT_NO_72?!