1 REM Sapphire flex macro library -- © 1994 Straylight
5 REM --- Support functions ---
8 LOCAL reg$,sep$,mask%,r%,s%,i%
10 WHILE FNflex__g(mask$,reg$,sep$)
11 IF reg$="" THEN ERROR 1,"Expected register, found `"+sep$+"'"
14 IF FNflex__g(mask$,reg$,sep$) THEN
15 IF reg$="" THEN ERROR 1,"Expected register, found `"+sep$+"'"
16 IF sep$="-" THEN ERROR 1,"Unexpected `-' in register list"
18 IF s%<r% THEN SWAP s%,r%
20 mask%=mask% OR (1<<i%)
23 ERROR 1,"Missing register name"
26 mask%=mask% OR (1<<r%)
31 DEF FNflex__g(RETURN mask$,RETURN reg$,RETURN sep$)
32 IF mask$="" THEN =FALSE
39 UNTIL mask$="" OR INSTR("-,",sep$)
40 IF INSTR("-,",sep$)=0 THEN
52 dcd FNflex__m(r$) OR &e8ae0000
60 dcd FNflex__m(r$) OR &e93e0000