アセンブラファイルとテストの整理
[YACASL2.git] / as / FUNC / mula_call.casl
1 MAIN    START
2         LAD     GR3,0           ; Xのインデックス
3 LOOPX   CPA     GR3,XCNT
4         JZE     FIN
5         LD      GR1,X,GR3
6         LAD     GR4,0           ; Yのインデックス
7 LOOPY   CPA     GR4,YCNT
8         JZE     XNEXT
9         LD      GR2,Y,GR4
10         OUT     SEP,SLEN
11         CALL    OUTA
12         PUSH    0,GR1
13         LD      GR1,GR2
14         CALL    OUTA
15         POP     GR1
16         CALL    MULA
17         JOV     WOV
18         PUSH    0,GR1
19         LD      GR1,GR0
20         CALL    OUTA
21         POP     GR1
22 YNEXT   OUT     SEP,SLEN        
23         LAD     GR4,1,GR4
24         JUMP    LOOPY
25 WOV     OUT     YOMSG,YLEN
26         JUMP    YNEXT
27 XNEXT   LAD     GR3,1,GR3
28         JUMP    LOOPX
29 FIN     RET
30 X       DC      0,1,2,127,128,151,217,255,256,257,32767,-32768,-32767,-257,-256,-255,-217,-151,-128,-127,-2,-1
31 Y       DC      0,1,2,127,128,151,217,255,256,257,32767,-32768,-32767,-257,-256,-255,-217,-151,-128,-127,-2,-1
32 XCNT    DC      22
33 YCNT    DC      22
34 SEP     DC      '--------------------'
35 SLEN    DC      20
36 YOMSG   DC      'Warning: overflow'
37 YLEN    DC      17
38         END