Annotation of nono/exp/fmovemn.has, revision 1.1.1.4

1.1       root        1: ;
                      2: ; nono
1.1.1.2   root        3: ; Copyright (C) 2020 nono project
1.1       root        4: ;
1.1.1.2   root        5: ; Redistribution and use in source and binary forms, with or without
                      6: ; modification, are permitted provided that the following conditions
                      7: ; are met:
                      8: ; 1. Redistributions of source code must retain the above copyright
                      9: ;    notice, this list of conditions and the following disclaimer.
                     10: ; 2. Redistributions in binary form must reproduce the above copyright
                     11: ;    notice, this list of conditions and the following disclaimer in the
                     12: ;    documentation and/or other materials provided with the distribution.
                     13: ;
                     14: ; THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
                     15: ; IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
                     16: ; OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
                     17: ; IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
                     18: ; INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
                     19: ; BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
                     20: ; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
                     21: ; AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
                     22: ; OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     23: ; OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     24: ; SUCH DAMAGE.
1.1       root       25: 
                     26: ; How to compile:
1.1.1.3   root       27: ;  > has fmovemn.has
                     28: ;  > hlk fmovemn.o si_util.o
1.1       root       29: 
                     30:        .xref   hexstr_long
                     31:        .include doscall.mac
1.1.1.4 ! root       32:        .include iocscall.mac
1.1       root       33:        .list
                     34:        .cpu    68030
                     35: 
                     36: PRINT  .macro  msg
1.1.1.4 ! root       37:        pea.l   msg
1.1       root       38:        DOS     _PRINT
                     39:        addq.l  #4,sp
                     40:        .endm
                     41: 
                     42:        .text
                     43:        .even
1.1.1.4 ! root       44: 
1.1.1.3   root       45: start:
1.1.1.4 ! root       46:        clr.l   -(sp)
        !            47:        DOS     _SUPER
        !            48:        movem.l d4-d7/a2-a4,-(sp)
        !            49:        moveq.l #$30,d6 ; Init D6 for dynamic
        !            50:        moveq.l #0,d4           ; Init D4 for d8(An,IX)
        !            51:        fmove.l d4,fpcr         ; Init FPCR, especially round mode and round prec.
        !            52: 
        !            53:        ; rough argument check
        !            54:        cmpi.b  #4,(a2)+        ; strlen(arg)<4 ?
        !            55:        bcs     easymode
        !            56:        cmpi.l  #$68617264,(a2) ; "hard"
        !            57:        bne     easymode
        !            58: 
        !            59: hardmode:
        !            60:        moveq.l #-1,d5
        !            61:        PRINT   msg_hard(pc)
        !            62:        bsr     test_0
        !            63:        bsr     test_1
        !            64:        bsr     test_2
        !            65:        bsr     test_3
        !            66:        bsr     test_4
        !            67:        bsr     test_5
        !            68:        bsr     test_6
        !            69:        bsr     test_7
        !            70:        bsr     test_8
        !            71:        bsr     test_9
        !            72:        bsr     test_10
        !            73:        bsr     test_11
        !            74:        bsr     test_12
        !            75:        bsr     test_13
        !            76:        bsr     test_14
        !            77:        bsr     test_15
        !            78:        bsr     test_16
        !            79:        bsr     test_17
        !            80:        bsr     test_18
        !            81:        bsr     test_19
        !            82:        bsr     test_20
        !            83:        bsr     test_21
        !            84:        bsr     test_22
        !            85:        bsr     test_23
        !            86:        bsr     test_24
        !            87:        bsr     test_25
        !            88:        bsr     test_26
        !            89:        bsr     test_27
        !            90:        bsr     test_28
        !            91:        bsr     test_29
        !            92:        bsr     test_30
        !            93:        bsr     test_31
        !            94:        bsr     test_32
        !            95:        bsr     test_33
        !            96:        bsr     test_34
        !            97:        bsr     test_35
        !            98:        bsr     test_36
        !            99:        bsr     test_37
        !           100:        bsr     test_38
        !           101:        bsr     test_39
        !           102:        bsr     test_40
        !           103:        bsr     test_41
        !           104:        bsr     test_42
        !           105:        bsr     test_43
        !           106:        bsr     test_44
        !           107:        bsr     test_45
        !           108:        bsr     test_46
        !           109:        bsr     test_47
        !           110:        bsr     test_48
        !           111:        bsr     test_49
        !           112:        bsr     test_50
        !           113:        bsr     test_51
        !           114:        bsr     test_52
        !           115:        bsr     test_53
        !           116:        bsr     test_54
        !           117:        bsr     test_55
        !           118:        bsr     test_nofpn
        !           119:        bsr     test_illdyn
        !           120:        bra     done
        !           121: 
        !           122: easymode:
        !           123:        moveq.l #0,d5
        !           124:        PRINT   msg_easy(pc)
        !           125:        bsr     test_16
        !           126:        bsr     test_17
        !           127:        bsr     test_19
        !           128:        bsr     test_20
        !           129:        bsr     test_23
        !           130:        bsr     test_24
        !           131:        bsr     test_26
        !           132:        bsr     test_27
        !           133:        bsr     test_32
        !           134:        bsr     test_39
        !           135:        bsr     test_44
        !           136:        bsr     test_47
        !           137:        bsr     test_48
        !           138:        bsr     test_51
        !           139:        bsr     test_54
        !           140:        bsr     test_55
1.1.1.3   root      141: 
1.1.1.4 ! root      142: done:
        !           143:        movem.l (sp)+,d4-d7/a2-a4
        !           144:        DOS     _EXIT
        !           145: 
        !           146: ; to,pred,sta,EA=d (hard)
        !           147: test_0:
        !           148:        moveq.l #-8,d0
        !           149:        and.w   d5,d0
        !           150:        PRINT   msg_test_0+8(pc,d0.w)
        !           151:        bsr     set_fline
1.1       root      152:        moveq.l #0,d7
                    153:        lea.l   @f,a3
1.1.1.4 ! root      154:        .dc.l   $f200c060
1.1       root      155: @@:
1.1.1.4 ! root      156:        bsr     restore_fline
1.1       root      157:        tst.l   d7
                    158:        bne     @f
1.1.1.4 ! root      159:        PRINT   msg_fail_notrap(pc)
1.1       root      160:        rts
                    161: @@:
1.1.1.4 ! root      162:        PRINT   msg_oktrap(pc)
1.1       root      163:        rts
                    164: 
1.1.1.4 ! root      165: ; to,pred,sta,EA=a (hard)
        !           166: test_1:
        !           167:        moveq.l #-8,d0
        !           168:        and.w   d5,d0
        !           169:        PRINT   msg_test_1+8(pc,d0.w)
        !           170:        bsr     set_fline
1.1       root      171:        moveq.l #0,d7
                    172:        lea.l   @f,a3
1.1.1.4 ! root      173:        .dc.l   $f208c060
1.1       root      174: @@:
1.1.1.4 ! root      175:        bsr     restore_fline
1.1       root      176:        tst.l   d7
                    177:        bne     @f
1.1.1.4 ! root      178:        PRINT   msg_fail_notrap(pc)
1.1       root      179:        rts
                    180: @@:
1.1.1.4 ! root      181:        PRINT   msg_oktrap(pc)
1.1       root      182:        rts
                    183: 
1.1.1.4 ! root      184: ; to,pred,sta,EA=m (hard)
        !           185: test_2:
        !           186:        moveq.l #-8,d0
        !           187:        and.w   d5,d0
        !           188:        PRINT   msg_test_2+8(pc,d0.w)
        !           189:        bsr     init_from
1.1       root      190:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      191:        bsr     set_fline
1.1       root      192:        moveq.l #0,d7
                    193:        lea.l   @f,a3
1.1.1.4 ! root      194:        .dc.l   $f210c060
1.1       root      195: @@:
1.1.1.4 ! root      196:        bsr     restore_fline
1.1       root      197:        tst.l   d7
                    198:        beq     @f
1.1.1.4 ! root      199:        PRINT   msg_fail_trap(pc)
1.1       root      200:        rts
                    201: @@:
1.1.1.4 ! root      202:        lea.l   srcdata(pc),a1
1.1       root      203:        cmp.l   a1,a0
                    204:        beq     @f
                    205:        pea.l   msg_fail_addr(pc)
                    206:        move.l  a1,-(sp)
                    207:        move.l  a0,-(sp)
                    208:        bsr     result
                    209:        lea.l   12(sp),sp
                    210: @@:
                    211:        lea.l   workarea(pc),a2
                    212:        ; compare FP0
                    213:        pea.l   msg_fail_fp0(pc)
                    214:        pea.l   (initdata+0*12)(pc)
                    215:        fmove.x fp0,(a2)
                    216:        pea.l   (a2)
                    217:        bsr     check_ext
                    218:        lea.l   12(sp),sp
                    219:        ; compare FP1
                    220:        pea.l   msg_fail_fp1(pc)
                    221:        pea.l   (initdata+1*12)(pc)
                    222:        fmove.x fp1,(a2)
                    223:        pea.l   (a2)
                    224:        bsr     check_ext
                    225:        lea.l   12(sp),sp
                    226:        ; compare FP2
                    227:        pea.l   msg_fail_fp2(pc)
                    228:        pea.l   (initdata+2*12)(pc)
                    229:        fmove.x fp2,(a2)
                    230:        pea.l   (a2)
                    231:        bsr     check_ext
                    232:        lea.l   12(sp),sp
                    233:        ; compare FP3
                    234:        pea.l   msg_fail_fp3(pc)
                    235:        pea.l   (initdata+3*12)(pc)
                    236:        fmove.x fp3,(a2)
                    237:        pea.l   (a2)
                    238:        bsr     check_ext
                    239:        lea.l   12(sp),sp
                    240:        ; compare FP4
                    241:        pea.l   msg_fail_fp4(pc)
                    242:        pea.l   (initdata+4*12)(pc)
                    243:        fmove.x fp4,(a2)
                    244:        pea.l   (a2)
                    245:        bsr     check_ext
                    246:        lea.l   12(sp),sp
                    247:        ; compare FP5
                    248:        pea.l   msg_fail_fp5(pc)
                    249:        pea.l   srcdata+12(pc)
                    250:        fmove.x fp5,(a2)
                    251:        pea.l   (a2)
                    252:        bsr     check_ext
                    253:        lea.l   12(sp),sp
                    254:        ; compare FP6
                    255:        pea.l   msg_fail_fp6(pc)
1.1.1.4 ! root      256:        pea.l   srcdata(pc)
1.1       root      257:        fmove.x fp6,(a2)
                    258:        pea.l   (a2)
                    259:        bsr     check_ext
                    260:        lea.l   12(sp),sp
                    261:        ; compare FP7
                    262:        pea.l   msg_fail_fp7(pc)
                    263:        pea.l   (initdata+7*12)(pc)
                    264:        fmove.x fp7,(a2)
                    265:        pea.l   (a2)
                    266:        bsr     check_ext
                    267:        lea.l   12(sp),sp
1.1.1.4 ! root      268: 
1.1       root      269:        tst.l   d7
                    270:        bne     @f
1.1.1.4 ! root      271:        PRINT   msg_ok(pc)
1.1       root      272: @@:
                    273:        rts
                    274: 
1.1.1.4 ! root      275: ; to,pred,sta,EA=+ (hard)
        !           276: test_3:
        !           277:        moveq.l #-8,d0
        !           278:        and.w   d5,d0
        !           279:        PRINT   msg_test_3+8(pc,d0.w)
        !           280:        bsr     init_from
1.1       root      281:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      282:        bsr     set_fline
1.1       root      283:        moveq.l #0,d7
                    284:        lea.l   @f,a3
1.1.1.4 ! root      285:        .dc.l   $f218c060
1.1       root      286: @@:
1.1.1.4 ! root      287:        bsr     restore_fline
1.1       root      288:        tst.l   d7
                    289:        beq     @f
1.1.1.4 ! root      290:        PRINT   msg_fail_trap(pc)
1.1       root      291:        rts
                    292: @@:
                    293:        lea.l   srcdata+24(pc),a1
                    294:        cmp.l   a1,a0
                    295:        beq     @f
                    296:        pea.l   msg_fail_addr(pc)
                    297:        move.l  a1,-(sp)
                    298:        move.l  a0,-(sp)
                    299:        bsr     result
                    300:        lea.l   12(sp),sp
                    301: @@:
                    302:        lea.l   workarea(pc),a2
                    303:        ; compare FP0
                    304:        pea.l   msg_fail_fp0(pc)
                    305:        pea.l   (initdata+0*12)(pc)
                    306:        fmove.x fp0,(a2)
                    307:        pea.l   (a2)
                    308:        bsr     check_ext
                    309:        lea.l   12(sp),sp
                    310:        ; compare FP1
                    311:        pea.l   msg_fail_fp1(pc)
                    312:        pea.l   (initdata+1*12)(pc)
                    313:        fmove.x fp1,(a2)
                    314:        pea.l   (a2)
                    315:        bsr     check_ext
                    316:        lea.l   12(sp),sp
                    317:        ; compare FP2
                    318:        pea.l   msg_fail_fp2(pc)
                    319:        pea.l   (initdata+2*12)(pc)
                    320:        fmove.x fp2,(a2)
                    321:        pea.l   (a2)
                    322:        bsr     check_ext
                    323:        lea.l   12(sp),sp
                    324:        ; compare FP3
                    325:        pea.l   msg_fail_fp3(pc)
                    326:        pea.l   (initdata+3*12)(pc)
                    327:        fmove.x fp3,(a2)
                    328:        pea.l   (a2)
                    329:        bsr     check_ext
                    330:        lea.l   12(sp),sp
                    331:        ; compare FP4
                    332:        pea.l   msg_fail_fp4(pc)
                    333:        pea.l   (initdata+4*12)(pc)
                    334:        fmove.x fp4,(a2)
                    335:        pea.l   (a2)
                    336:        bsr     check_ext
                    337:        lea.l   12(sp),sp
                    338:        ; compare FP5
                    339:        pea.l   msg_fail_fp5(pc)
                    340:        pea.l   srcdata+12(pc)
                    341:        fmove.x fp5,(a2)
                    342:        pea.l   (a2)
                    343:        bsr     check_ext
                    344:        lea.l   12(sp),sp
                    345:        ; compare FP6
                    346:        pea.l   msg_fail_fp6(pc)
1.1.1.4 ! root      347:        pea.l   srcdata(pc)
1.1       root      348:        fmove.x fp6,(a2)
                    349:        pea.l   (a2)
                    350:        bsr     check_ext
                    351:        lea.l   12(sp),sp
                    352:        ; compare FP7
                    353:        pea.l   msg_fail_fp7(pc)
                    354:        pea.l   (initdata+7*12)(pc)
                    355:        fmove.x fp7,(a2)
                    356:        pea.l   (a2)
                    357:        bsr     check_ext
                    358:        lea.l   12(sp),sp
                    359: 
                    360:        tst.l   d7
                    361:        bne     @f
1.1.1.4 ! root      362:        PRINT   msg_ok(pc)
1.1       root      363: @@:
                    364:        rts
                    365: 
1.1.1.4 ! root      366: ; to,pred,sta,EA=- (hard)
        !           367: test_4:
        !           368:        moveq.l #-8,d0
        !           369:        and.w   d5,d0
        !           370:        PRINT   msg_test_4+8(pc,d0.w)
        !           371:        bsr     set_fline
1.1       root      372:        moveq.l #0,d7
                    373:        lea.l   @f,a3
1.1.1.4 ! root      374:        .dc.l   $f220c060
1.1       root      375: @@:
1.1.1.4 ! root      376:        bsr     restore_fline
1.1       root      377:        tst.l   d7
                    378:        bne     @f
1.1.1.4 ! root      379:        PRINT   msg_fail_notrap(pc)
1.1       root      380:        rts
                    381: @@:
1.1.1.4 ! root      382:        PRINT   msg_oktrap(pc)
1.1       root      383:        rts
                    384: 
1.1.1.4 ! root      385: ; to,pred,sta,EA=r (hard)
        !           386: test_5:
        !           387:        moveq.l #-8,d0
        !           388:        and.w   d5,d0
        !           389:        PRINT   msg_test_5+8(pc,d0.w)
        !           390:        bsr     init_from
1.1       root      391:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      392:        bsr     set_fline
1.1       root      393:        moveq.l #0,d7
                    394:        lea.l   @f,a3
1.1.1.4 ! root      395:        .dc.l   $f228c060
        !           396:        .dc.w   0
1.1       root      397: @@:
1.1.1.4 ! root      398:        bsr     restore_fline
1.1       root      399:        tst.l   d7
                    400:        beq     @f
1.1.1.4 ! root      401:        PRINT   msg_fail_trap(pc)
1.1       root      402:        rts
                    403: @@:
1.1.1.4 ! root      404:        lea.l   srcdata(pc),a1
1.1       root      405:        cmp.l   a1,a0
                    406:        beq     @f
                    407:        pea.l   msg_fail_addr(pc)
                    408:        move.l  a1,-(sp)
                    409:        move.l  a0,-(sp)
                    410:        bsr     result
                    411:        lea.l   12(sp),sp
                    412: @@:
                    413:        lea.l   workarea(pc),a2
                    414:        ; compare FP0
                    415:        pea.l   msg_fail_fp0(pc)
                    416:        pea.l   (initdata+0*12)(pc)
                    417:        fmove.x fp0,(a2)
                    418:        pea.l   (a2)
                    419:        bsr     check_ext
                    420:        lea.l   12(sp),sp
                    421:        ; compare FP1
                    422:        pea.l   msg_fail_fp1(pc)
                    423:        pea.l   (initdata+1*12)(pc)
                    424:        fmove.x fp1,(a2)
                    425:        pea.l   (a2)
                    426:        bsr     check_ext
                    427:        lea.l   12(sp),sp
                    428:        ; compare FP2
                    429:        pea.l   msg_fail_fp2(pc)
                    430:        pea.l   (initdata+2*12)(pc)
                    431:        fmove.x fp2,(a2)
                    432:        pea.l   (a2)
                    433:        bsr     check_ext
                    434:        lea.l   12(sp),sp
                    435:        ; compare FP3
                    436:        pea.l   msg_fail_fp3(pc)
                    437:        pea.l   (initdata+3*12)(pc)
                    438:        fmove.x fp3,(a2)
                    439:        pea.l   (a2)
                    440:        bsr     check_ext
                    441:        lea.l   12(sp),sp
                    442:        ; compare FP4
                    443:        pea.l   msg_fail_fp4(pc)
1.1.1.4 ! root      444:        pea.l   (initdata+4*12)(pc)
1.1       root      445:        fmove.x fp4,(a2)
                    446:        pea.l   (a2)
                    447:        bsr     check_ext
                    448:        lea.l   12(sp),sp
                    449:        ; compare FP5
                    450:        pea.l   msg_fail_fp5(pc)
1.1.1.4 ! root      451:        pea.l   srcdata+12(pc)
1.1       root      452:        fmove.x fp5,(a2)
                    453:        pea.l   (a2)
                    454:        bsr     check_ext
                    455:        lea.l   12(sp),sp
                    456:        ; compare FP6
                    457:        pea.l   msg_fail_fp6(pc)
1.1.1.4 ! root      458:        pea.l   srcdata(pc)
1.1       root      459:        fmove.x fp6,(a2)
                    460:        pea.l   (a2)
                    461:        bsr     check_ext
                    462:        lea.l   12(sp),sp
                    463:        ; compare FP7
                    464:        pea.l   msg_fail_fp7(pc)
                    465:        pea.l   (initdata+7*12)(pc)
                    466:        fmove.x fp7,(a2)
                    467:        pea.l   (a2)
                    468:        bsr     check_ext
                    469:        lea.l   12(sp),sp
1.1.1.4 ! root      470: 
1.1       root      471:        tst.l   d7
                    472:        bne     @f
1.1.1.4 ! root      473:        PRINT   msg_ok(pc)
1.1       root      474: @@:
                    475:        rts
                    476: 
1.1.1.4 ! root      477: ; to,pred,sta,EA=x (hard)
        !           478: test_6:
        !           479:        moveq.l #-8,d0
        !           480:        and.w   d5,d0
        !           481:        PRINT   msg_test_6+8(pc,d0.w)
        !           482:        bsr     init_from
1.1       root      483:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      484:        bsr     set_fline
1.1       root      485:        moveq.l #0,d7
                    486:        lea.l   @f,a3
1.1.1.4 ! root      487:        .dc.l   $f230c060
        !           488:        .dc.w   $4000
1.1       root      489: @@:
1.1.1.4 ! root      490:        bsr     restore_fline
1.1       root      491:        tst.l   d7
                    492:        beq     @f
1.1.1.4 ! root      493:        PRINT   msg_fail_trap(pc)
1.1       root      494:        rts
                    495: @@:
1.1.1.4 ! root      496:        lea.l   srcdata(pc),a1
1.1       root      497:        cmp.l   a1,a0
                    498:        beq     @f
                    499:        pea.l   msg_fail_addr(pc)
                    500:        move.l  a1,-(sp)
                    501:        move.l  a0,-(sp)
                    502:        bsr     result
                    503:        lea.l   12(sp),sp
                    504: @@:
                    505:        lea.l   workarea(pc),a2
                    506:        ; compare FP0
                    507:        pea.l   msg_fail_fp0(pc)
                    508:        pea.l   (initdata+0*12)(pc)
                    509:        fmove.x fp0,(a2)
                    510:        pea.l   (a2)
                    511:        bsr     check_ext
                    512:        lea.l   12(sp),sp
                    513:        ; compare FP1
                    514:        pea.l   msg_fail_fp1(pc)
                    515:        pea.l   (initdata+1*12)(pc)
                    516:        fmove.x fp1,(a2)
                    517:        pea.l   (a2)
                    518:        bsr     check_ext
                    519:        lea.l   12(sp),sp
                    520:        ; compare FP2
                    521:        pea.l   msg_fail_fp2(pc)
                    522:        pea.l   (initdata+2*12)(pc)
                    523:        fmove.x fp2,(a2)
                    524:        pea.l   (a2)
                    525:        bsr     check_ext
                    526:        lea.l   12(sp),sp
                    527:        ; compare FP3
                    528:        pea.l   msg_fail_fp3(pc)
                    529:        pea.l   (initdata+3*12)(pc)
                    530:        fmove.x fp3,(a2)
                    531:        pea.l   (a2)
                    532:        bsr     check_ext
                    533:        lea.l   12(sp),sp
                    534:        ; compare FP4
                    535:        pea.l   msg_fail_fp4(pc)
1.1.1.4 ! root      536:        pea.l   (initdata+4*12)(pc)
1.1       root      537:        fmove.x fp4,(a2)
                    538:        pea.l   (a2)
                    539:        bsr     check_ext
                    540:        lea.l   12(sp),sp
                    541:        ; compare FP5
                    542:        pea.l   msg_fail_fp5(pc)
1.1.1.4 ! root      543:        pea.l   srcdata+12(pc)
1.1       root      544:        fmove.x fp5,(a2)
                    545:        pea.l   (a2)
                    546:        bsr     check_ext
                    547:        lea.l   12(sp),sp
                    548:        ; compare FP6
                    549:        pea.l   msg_fail_fp6(pc)
1.1.1.4 ! root      550:        pea.l   srcdata(pc)
1.1       root      551:        fmove.x fp6,(a2)
                    552:        pea.l   (a2)
                    553:        bsr     check_ext
                    554:        lea.l   12(sp),sp
                    555:        ; compare FP7
                    556:        pea.l   msg_fail_fp7(pc)
                    557:        pea.l   (initdata+7*12)(pc)
                    558:        fmove.x fp7,(a2)
                    559:        pea.l   (a2)
                    560:        bsr     check_ext
                    561:        lea.l   12(sp),sp
                    562: 
                    563:        tst.l   d7
                    564:        bne     @f
1.1.1.4 ! root      565:        PRINT   msg_ok(pc)
1.1       root      566: @@:
                    567:        rts
                    568: 
1.1.1.4 ! root      569: ; to,pred,dyn,EA=d (hard)
        !           570: test_7:
        !           571:        moveq.l #-8,d0
        !           572:        and.w   d5,d0
        !           573:        PRINT   msg_test_7+8(pc,d0.w)
        !           574:        bsr     set_fline
1.1       root      575:        moveq.l #0,d7
                    576:        lea.l   @f,a3
1.1.1.4 ! root      577:        .dc.l   $f200c860
1.1       root      578: @@:
1.1.1.4 ! root      579:        bsr     restore_fline
1.1       root      580:        tst.l   d7
                    581:        bne     @f
1.1.1.4 ! root      582:        PRINT   msg_fail_notrap(pc)
1.1       root      583:        rts
                    584: @@:
1.1.1.4 ! root      585:        PRINT   msg_oktrap(pc)
1.1       root      586:        rts
                    587: 
1.1.1.4 ! root      588: ; to,pred,dyn,EA=a (hard)
        !           589: test_8:
        !           590:        moveq.l #-8,d0
        !           591:        and.w   d5,d0
        !           592:        PRINT   msg_test_8+8(pc,d0.w)
        !           593:        bsr     set_fline
1.1       root      594:        moveq.l #0,d7
                    595:        lea.l   @f,a3
1.1.1.4 ! root      596:        .dc.l   $f208c860
1.1       root      597: @@:
1.1.1.4 ! root      598:        bsr     restore_fline
1.1       root      599:        tst.l   d7
                    600:        bne     @f
1.1.1.4 ! root      601:        PRINT   msg_fail_notrap(pc)
1.1       root      602:        rts
                    603: @@:
1.1.1.4 ! root      604:        PRINT   msg_oktrap(pc)
1.1       root      605:        rts
                    606: 
1.1.1.4 ! root      607: ; to,pred,dyn,EA=m (hard)
        !           608: test_9:
        !           609:        moveq.l #-8,d0
        !           610:        and.w   d5,d0
        !           611:        PRINT   msg_test_9+8(pc,d0.w)
        !           612:        bsr     init_from
1.1       root      613:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      614:        bsr     set_fline
1.1       root      615:        moveq.l #0,d7
                    616:        lea.l   @f,a3
1.1.1.4 ! root      617:        .dc.l   $f210c860
1.1       root      618: @@:
1.1.1.4 ! root      619:        bsr     restore_fline
1.1       root      620:        tst.l   d7
                    621:        beq     @f
1.1.1.4 ! root      622:        PRINT   msg_fail_trap(pc)
1.1       root      623:        rts
                    624: @@:
1.1.1.4 ! root      625:        lea.l   srcdata(pc),a1
1.1       root      626:        cmp.l   a1,a0
                    627:        beq     @f
                    628:        pea.l   msg_fail_addr(pc)
                    629:        move.l  a1,-(sp)
                    630:        move.l  a0,-(sp)
                    631:        bsr     result
                    632:        lea.l   12(sp),sp
                    633: @@:
                    634:        lea.l   workarea(pc),a2
                    635:        ; compare FP0
                    636:        pea.l   msg_fail_fp0(pc)
                    637:        pea.l   (initdata+0*12)(pc)
                    638:        fmove.x fp0,(a2)
                    639:        pea.l   (a2)
                    640:        bsr     check_ext
                    641:        lea.l   12(sp),sp
                    642:        ; compare FP1
                    643:        pea.l   msg_fail_fp1(pc)
1.1.1.4 ! root      644:        pea.l   (initdata+1*12)(pc)
1.1       root      645:        fmove.x fp1,(a2)
                    646:        pea.l   (a2)
                    647:        bsr     check_ext
                    648:        lea.l   12(sp),sp
                    649:        ; compare FP2
                    650:        pea.l   msg_fail_fp2(pc)
1.1.1.4 ! root      651:        pea.l   (initdata+2*12)(pc)
1.1       root      652:        fmove.x fp2,(a2)
                    653:        pea.l   (a2)
                    654:        bsr     check_ext
                    655:        lea.l   12(sp),sp
                    656:        ; compare FP3
                    657:        pea.l   msg_fail_fp3(pc)
                    658:        pea.l   (initdata+3*12)(pc)
                    659:        fmove.x fp3,(a2)
                    660:        pea.l   (a2)
                    661:        bsr     check_ext
                    662:        lea.l   12(sp),sp
                    663:        ; compare FP4
                    664:        pea.l   msg_fail_fp4(pc)
1.1.1.4 ! root      665:        pea.l   srcdata+12(pc)
1.1       root      666:        fmove.x fp4,(a2)
                    667:        pea.l   (a2)
                    668:        bsr     check_ext
                    669:        lea.l   12(sp),sp
                    670:        ; compare FP5
                    671:        pea.l   msg_fail_fp5(pc)
1.1.1.4 ! root      672:        pea.l   srcdata(pc)
1.1       root      673:        fmove.x fp5,(a2)
                    674:        pea.l   (a2)
                    675:        bsr     check_ext
                    676:        lea.l   12(sp),sp
                    677:        ; compare FP6
                    678:        pea.l   msg_fail_fp6(pc)
                    679:        pea.l   (initdata+6*12)(pc)
                    680:        fmove.x fp6,(a2)
                    681:        pea.l   (a2)
                    682:        bsr     check_ext
                    683:        lea.l   12(sp),sp
                    684:        ; compare FP7
                    685:        pea.l   msg_fail_fp7(pc)
                    686:        pea.l   (initdata+7*12)(pc)
                    687:        fmove.x fp7,(a2)
                    688:        pea.l   (a2)
                    689:        bsr     check_ext
                    690:        lea.l   12(sp),sp
1.1.1.4 ! root      691: 
1.1       root      692:        tst.l   d7
                    693:        bne     @f
1.1.1.4 ! root      694:        PRINT   msg_ok(pc)
1.1       root      695: @@:
                    696:        rts
                    697: 
1.1.1.4 ! root      698: ; to,pred,dyn,EA=+ (hard)
        !           699: test_10:
        !           700:        moveq.l #-8,d0
        !           701:        and.w   d5,d0
        !           702:        PRINT   msg_test_10+8(pc,d0.w)
        !           703:        bsr     init_from
1.1       root      704:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      705:        bsr     set_fline
1.1       root      706:        moveq.l #0,d7
                    707:        lea.l   @f,a3
1.1.1.4 ! root      708:        .dc.l   $f218c860
1.1       root      709: @@:
1.1.1.4 ! root      710:        bsr     restore_fline
1.1       root      711:        tst.l   d7
                    712:        beq     @f
1.1.1.4 ! root      713:        PRINT   msg_fail_trap(pc)
1.1       root      714:        rts
                    715: @@:
                    716:        lea.l   srcdata+24(pc),a1
                    717:        cmp.l   a1,a0
                    718:        beq     @f
                    719:        pea.l   msg_fail_addr(pc)
                    720:        move.l  a1,-(sp)
                    721:        move.l  a0,-(sp)
                    722:        bsr     result
                    723:        lea.l   12(sp),sp
                    724: @@:
                    725:        lea.l   workarea(pc),a2
                    726:        ; compare FP0
                    727:        pea.l   msg_fail_fp0(pc)
                    728:        pea.l   (initdata+0*12)(pc)
                    729:        fmove.x fp0,(a2)
                    730:        pea.l   (a2)
                    731:        bsr     check_ext
                    732:        lea.l   12(sp),sp
                    733:        ; compare FP1
                    734:        pea.l   msg_fail_fp1(pc)
1.1.1.4 ! root      735:        pea.l   (initdata+1*12)(pc)
1.1       root      736:        fmove.x fp1,(a2)
                    737:        pea.l   (a2)
                    738:        bsr     check_ext
                    739:        lea.l   12(sp),sp
                    740:        ; compare FP2
                    741:        pea.l   msg_fail_fp2(pc)
1.1.1.4 ! root      742:        pea.l   (initdata+2*12)(pc)
1.1       root      743:        fmove.x fp2,(a2)
                    744:        pea.l   (a2)
                    745:        bsr     check_ext
                    746:        lea.l   12(sp),sp
                    747:        ; compare FP3
                    748:        pea.l   msg_fail_fp3(pc)
                    749:        pea.l   (initdata+3*12)(pc)
                    750:        fmove.x fp3,(a2)
                    751:        pea.l   (a2)
                    752:        bsr     check_ext
                    753:        lea.l   12(sp),sp
                    754:        ; compare FP4
                    755:        pea.l   msg_fail_fp4(pc)
1.1.1.4 ! root      756:        pea.l   srcdata+12(pc)
1.1       root      757:        fmove.x fp4,(a2)
                    758:        pea.l   (a2)
                    759:        bsr     check_ext
                    760:        lea.l   12(sp),sp
                    761:        ; compare FP5
                    762:        pea.l   msg_fail_fp5(pc)
1.1.1.4 ! root      763:        pea.l   srcdata(pc)
1.1       root      764:        fmove.x fp5,(a2)
                    765:        pea.l   (a2)
                    766:        bsr     check_ext
                    767:        lea.l   12(sp),sp
                    768:        ; compare FP6
                    769:        pea.l   msg_fail_fp6(pc)
                    770:        pea.l   (initdata+6*12)(pc)
                    771:        fmove.x fp6,(a2)
                    772:        pea.l   (a2)
                    773:        bsr     check_ext
                    774:        lea.l   12(sp),sp
                    775:        ; compare FP7
                    776:        pea.l   msg_fail_fp7(pc)
                    777:        pea.l   (initdata+7*12)(pc)
                    778:        fmove.x fp7,(a2)
                    779:        pea.l   (a2)
                    780:        bsr     check_ext
                    781:        lea.l   12(sp),sp
                    782: 
                    783:        tst.l   d7
                    784:        bne     @f
1.1.1.4 ! root      785:        PRINT   msg_ok(pc)
1.1       root      786: @@:
                    787:        rts
                    788: 
1.1.1.4 ! root      789: ; to,pred,dyn,EA=- (hard)
        !           790: test_11:
        !           791:        moveq.l #-8,d0
        !           792:        and.w   d5,d0
        !           793:        PRINT   msg_test_11+8(pc,d0.w)
        !           794:        bsr     set_fline
1.1       root      795:        moveq.l #0,d7
                    796:        lea.l   @f,a3
1.1.1.4 ! root      797:        .dc.l   $f220c860
1.1       root      798: @@:
1.1.1.4 ! root      799:        bsr     restore_fline
1.1       root      800:        tst.l   d7
                    801:        bne     @f
1.1.1.4 ! root      802:        PRINT   msg_fail_notrap(pc)
1.1       root      803:        rts
                    804: @@:
1.1.1.4 ! root      805:        PRINT   msg_oktrap(pc)
1.1       root      806:        rts
                    807: 
1.1.1.4 ! root      808: ; to,pred,dyn,EA=r (hard)
        !           809: test_12:
        !           810:        moveq.l #-8,d0
        !           811:        and.w   d5,d0
        !           812:        PRINT   msg_test_12+8(pc,d0.w)
        !           813:        bsr     init_from
1.1       root      814:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      815:        bsr     set_fline
1.1       root      816:        moveq.l #0,d7
                    817:        lea.l   @f,a3
1.1.1.4 ! root      818:        .dc.l   $f228c860
        !           819:        .dc.w   0
1.1       root      820: @@:
1.1.1.4 ! root      821:        bsr     restore_fline
1.1       root      822:        tst.l   d7
                    823:        beq     @f
1.1.1.4 ! root      824:        PRINT   msg_fail_trap(pc)
1.1       root      825:        rts
                    826: @@:
1.1.1.4 ! root      827:        lea.l   srcdata(pc),a1
1.1       root      828:        cmp.l   a1,a0
                    829:        beq     @f
                    830:        pea.l   msg_fail_addr(pc)
                    831:        move.l  a1,-(sp)
                    832:        move.l  a0,-(sp)
                    833:        bsr     result
                    834:        lea.l   12(sp),sp
                    835: @@:
                    836:        lea.l   workarea(pc),a2
                    837:        ; compare FP0
                    838:        pea.l   msg_fail_fp0(pc)
                    839:        pea.l   (initdata+0*12)(pc)
                    840:        fmove.x fp0,(a2)
                    841:        pea.l   (a2)
                    842:        bsr     check_ext
                    843:        lea.l   12(sp),sp
                    844:        ; compare FP1
                    845:        pea.l   msg_fail_fp1(pc)
                    846:        pea.l   (initdata+1*12)(pc)
                    847:        fmove.x fp1,(a2)
                    848:        pea.l   (a2)
                    849:        bsr     check_ext
                    850:        lea.l   12(sp),sp
                    851:        ; compare FP2
                    852:        pea.l   msg_fail_fp2(pc)
1.1.1.4 ! root      853:        pea.l   (initdata+2*12)(pc)
1.1       root      854:        fmove.x fp2,(a2)
                    855:        pea.l   (a2)
                    856:        bsr     check_ext
                    857:        lea.l   12(sp),sp
                    858:        ; compare FP3
                    859:        pea.l   msg_fail_fp3(pc)
1.1.1.4 ! root      860:        pea.l   (initdata+3*12)(pc)
1.1       root      861:        fmove.x fp3,(a2)
                    862:        pea.l   (a2)
                    863:        bsr     check_ext
                    864:        lea.l   12(sp),sp
                    865:        ; compare FP4
                    866:        pea.l   msg_fail_fp4(pc)
1.1.1.4 ! root      867:        pea.l   srcdata+12(pc)
1.1       root      868:        fmove.x fp4,(a2)
                    869:        pea.l   (a2)
                    870:        bsr     check_ext
                    871:        lea.l   12(sp),sp
                    872:        ; compare FP5
                    873:        pea.l   msg_fail_fp5(pc)
1.1.1.4 ! root      874:        pea.l   srcdata(pc)
1.1       root      875:        fmove.x fp5,(a2)
                    876:        pea.l   (a2)
                    877:        bsr     check_ext
                    878:        lea.l   12(sp),sp
                    879:        ; compare FP6
                    880:        pea.l   msg_fail_fp6(pc)
                    881:        pea.l   (initdata+6*12)(pc)
                    882:        fmove.x fp6,(a2)
                    883:        pea.l   (a2)
                    884:        bsr     check_ext
                    885:        lea.l   12(sp),sp
                    886:        ; compare FP7
                    887:        pea.l   msg_fail_fp7(pc)
                    888:        pea.l   (initdata+7*12)(pc)
                    889:        fmove.x fp7,(a2)
                    890:        pea.l   (a2)
                    891:        bsr     check_ext
                    892:        lea.l   12(sp),sp
1.1.1.4 ! root      893: 
1.1       root      894:        tst.l   d7
                    895:        bne     @f
1.1.1.4 ! root      896:        PRINT   msg_ok(pc)
1.1       root      897: @@:
                    898:        rts
                    899: 
1.1.1.4 ! root      900: ; to,pred,dyn,EA=x (hard)
        !           901: test_13:
        !           902:        moveq.l #-8,d0
        !           903:        and.w   d5,d0
        !           904:        PRINT   msg_test_13+8(pc,d0.w)
        !           905:        bsr     init_from
1.1       root      906:        lea.l   srcdata(pc),a0
1.1.1.4 ! root      907:        bsr     set_fline
1.1       root      908:        moveq.l #0,d7
                    909:        lea.l   @f,a3
1.1.1.4 ! root      910:        .dc.l   $f230c860
        !           911:        .dc.w   $4000
1.1       root      912: @@:
1.1.1.4 ! root      913:        bsr     restore_fline
1.1       root      914:        tst.l   d7
                    915:        beq     @f
1.1.1.4 ! root      916:        PRINT   msg_fail_trap(pc)
1.1       root      917:        rts
                    918: @@:
1.1.1.4 ! root      919:        lea.l   srcdata(pc),a1
1.1       root      920:        cmp.l   a1,a0
                    921:        beq     @f
                    922:        pea.l   msg_fail_addr(pc)
                    923:        move.l  a1,-(sp)
                    924:        move.l  a0,-(sp)
                    925:        bsr     result
                    926:        lea.l   12(sp),sp
                    927: @@:
                    928:        lea.l   workarea(pc),a2
                    929:        ; compare FP0
                    930:        pea.l   msg_fail_fp0(pc)
                    931:        pea.l   (initdata+0*12)(pc)
                    932:        fmove.x fp0,(a2)
                    933:        pea.l   (a2)
                    934:        bsr     check_ext
                    935:        lea.l   12(sp),sp
                    936:        ; compare FP1
                    937:        pea.l   msg_fail_fp1(pc)
                    938:        pea.l   (initdata+1*12)(pc)
                    939:        fmove.x fp1,(a2)
                    940:        pea.l   (a2)
                    941:        bsr     check_ext
                    942:        lea.l   12(sp),sp
                    943:        ; compare FP2
                    944:        pea.l   msg_fail_fp2(pc)
1.1.1.4 ! root      945:        pea.l   (initdata+2*12)(pc)
1.1       root      946:        fmove.x fp2,(a2)
                    947:        pea.l   (a2)
                    948:        bsr     check_ext
                    949:        lea.l   12(sp),sp
                    950:        ; compare FP3
                    951:        pea.l   msg_fail_fp3(pc)
1.1.1.4 ! root      952:        pea.l   (initdata+3*12)(pc)
1.1       root      953:        fmove.x fp3,(a2)
                    954:        pea.l   (a2)
                    955:        bsr     check_ext
                    956:        lea.l   12(sp),sp
                    957:        ; compare FP4
                    958:        pea.l   msg_fail_fp4(pc)
1.1.1.4 ! root      959:        pea.l   srcdata+12(pc)
1.1       root      960:        fmove.x fp4,(a2)
                    961:        pea.l   (a2)
                    962:        bsr     check_ext
                    963:        lea.l   12(sp),sp
                    964:        ; compare FP5
                    965:        pea.l   msg_fail_fp5(pc)
1.1.1.4 ! root      966:        pea.l   srcdata(pc)
1.1       root      967:        fmove.x fp5,(a2)
                    968:        pea.l   (a2)
                    969:        bsr     check_ext
                    970:        lea.l   12(sp),sp
                    971:        ; compare FP6
                    972:        pea.l   msg_fail_fp6(pc)
                    973:        pea.l   (initdata+6*12)(pc)
                    974:        fmove.x fp6,(a2)
                    975:        pea.l   (a2)
                    976:        bsr     check_ext
                    977:        lea.l   12(sp),sp
                    978:        ; compare FP7
                    979:        pea.l   msg_fail_fp7(pc)
                    980:        pea.l   (initdata+7*12)(pc)
                    981:        fmove.x fp7,(a2)
                    982:        pea.l   (a2)
                    983:        bsr     check_ext
                    984:        lea.l   12(sp),sp
                    985: 
                    986:        tst.l   d7
                    987:        bne     @f
1.1.1.4 ! root      988:        PRINT   msg_ok(pc)
1.1       root      989: @@:
                    990:        rts
                    991: 
1.1.1.4 ! root      992: ; to,ctrl,sta,EA=d (hard)
        !           993: test_14:
        !           994:        moveq.l #-8,d0
        !           995:        and.w   d5,d0
        !           996:        PRINT   msg_test_14+8(pc,d0.w)
        !           997:        bsr     set_fline
1.1       root      998:        moveq.l #0,d7
                    999:        lea.l   @f,a3
1.1.1.4 ! root     1000:        .dc.l   $f200d060
1.1       root     1001: @@:
1.1.1.4 ! root     1002:        bsr     restore_fline
1.1       root     1003:        tst.l   d7
                   1004:        bne     @f
1.1.1.4 ! root     1005:        PRINT   msg_fail_notrap(pc)
1.1       root     1006:        rts
                   1007: @@:
1.1.1.4 ! root     1008:        PRINT   msg_oktrap(pc)
1.1       root     1009:        rts
                   1010: 
1.1.1.4 ! root     1011: ; to,ctrl,sta,EA=a (hard)
        !          1012: test_15:
        !          1013:        moveq.l #-8,d0
        !          1014:        and.w   d5,d0
        !          1015:        PRINT   msg_test_15+8(pc,d0.w)
        !          1016:        bsr     set_fline
1.1       root     1017:        moveq.l #0,d7
                   1018:        lea.l   @f,a3
1.1.1.4 ! root     1019:        .dc.l   $f208d060
1.1       root     1020: @@:
1.1.1.4 ! root     1021:        bsr     restore_fline
1.1       root     1022:        tst.l   d7
                   1023:        bne     @f
1.1.1.4 ! root     1024:        PRINT   msg_fail_notrap(pc)
1.1       root     1025:        rts
                   1026: @@:
1.1.1.4 ! root     1027:        PRINT   msg_oktrap(pc)
1.1       root     1028:        rts
                   1029: 
1.1.1.4 ! root     1030: ; to,ctrl,sta,EA=m
        !          1031: test_16:
        !          1032:        moveq.l #-8,d0
        !          1033:        and.w   d5,d0
        !          1034:        PRINT   msg_test_16+8(pc,d0.w)
        !          1035:        bsr     init_from
        !          1036:        lea.l   srcdata(pc),a0
        !          1037:        bsr     set_fline
1.1       root     1038:        moveq.l #0,d7
                   1039:        lea.l   @f,a3
1.1.1.4 ! root     1040:        .dc.l   $f210d060
1.1       root     1041: @@:
1.1.1.4 ! root     1042:        bsr     restore_fline
1.1       root     1043:        tst.l   d7
                   1044:        beq     @f
1.1.1.4 ! root     1045:        PRINT   msg_fail_trap(pc)
1.1       root     1046:        rts
                   1047: @@:
1.1.1.4 ! root     1048:        lea.l   srcdata(pc),a1
1.1       root     1049:        cmp.l   a1,a0
                   1050:        beq     @f
                   1051:        pea.l   msg_fail_addr(pc)
                   1052:        move.l  a1,-(sp)
                   1053:        move.l  a0,-(sp)
                   1054:        bsr     result
                   1055:        lea.l   12(sp),sp
                   1056: @@:
1.1.1.4 ! root     1057:        lea.l   workarea(pc),a2
        !          1058:        ; compare FP0
        !          1059:        pea.l   msg_fail_fp0(pc)
        !          1060:        pea.l   (initdata+0*12)(pc)
        !          1061:        fmove.x fp0,(a2)
        !          1062:        pea.l   (a2)
1.1       root     1063:        bsr     check_ext
                   1064:        lea.l   12(sp),sp
1.1.1.4 ! root     1065:        ; compare FP1
        !          1066:        pea.l   msg_fail_fp1(pc)
        !          1067:        pea.l   srcdata(pc)
        !          1068:        fmove.x fp1,(a2)
        !          1069:        pea.l   (a2)
        !          1070:        bsr     check_ext
        !          1071:        lea.l   12(sp),sp
        !          1072:        ; compare FP2
        !          1073:        pea.l   msg_fail_fp2(pc)
        !          1074:        pea.l   srcdata+12(pc)
        !          1075:        fmove.x fp2,(a2)
        !          1076:        pea.l   (a2)
        !          1077:        bsr     check_ext
        !          1078:        lea.l   12(sp),sp
        !          1079:        ; compare FP3
        !          1080:        pea.l   msg_fail_fp3(pc)
        !          1081:        pea.l   (initdata+3*12)(pc)
        !          1082:        fmove.x fp3,(a2)
        !          1083:        pea.l   (a2)
        !          1084:        bsr     check_ext
        !          1085:        lea.l   12(sp),sp
        !          1086:        ; compare FP4
        !          1087:        pea.l   msg_fail_fp4(pc)
        !          1088:        pea.l   (initdata+4*12)(pc)
        !          1089:        fmove.x fp4,(a2)
        !          1090:        pea.l   (a2)
        !          1091:        bsr     check_ext
        !          1092:        lea.l   12(sp),sp
        !          1093:        ; compare FP5
        !          1094:        pea.l   msg_fail_fp5(pc)
1.1       root     1095:        pea.l   (initdata+5*12)(pc)
1.1.1.4 ! root     1096:        fmove.x fp5,(a2)
        !          1097:        pea.l   (a2)
        !          1098:        bsr     check_ext
        !          1099:        lea.l   12(sp),sp
        !          1100:        ; compare FP6
        !          1101:        pea.l   msg_fail_fp6(pc)
        !          1102:        pea.l   (initdata+6*12)(pc)
        !          1103:        fmove.x fp6,(a2)
        !          1104:        pea.l   (a2)
        !          1105:        bsr     check_ext
        !          1106:        lea.l   12(sp),sp
        !          1107:        ; compare FP7
        !          1108:        pea.l   msg_fail_fp7(pc)
        !          1109:        pea.l   (initdata+7*12)(pc)
        !          1110:        fmove.x fp7,(a2)
        !          1111:        pea.l   (a2)
1.1       root     1112:        bsr     check_ext
                   1113:        lea.l   12(sp),sp
                   1114: 
                   1115:        tst.l   d7
                   1116:        bne     @f
1.1.1.4 ! root     1117:        PRINT   msg_ok(pc)
1.1       root     1118: @@:
                   1119:        rts
                   1120: 
1.1.1.4 ! root     1121: ; to,ctrl,sta,EA=+
        !          1122: test_17:
        !          1123:        moveq.l #-8,d0
        !          1124:        and.w   d5,d0
        !          1125:        PRINT   msg_test_17+8(pc,d0.w)
        !          1126:        bsr     init_from
        !          1127:        lea.l   srcdata(pc),a0
        !          1128:        bsr     set_fline
1.1       root     1129:        moveq.l #0,d7
                   1130:        lea.l   @f,a3
1.1.1.4 ! root     1131:        .dc.l   $f218d060
1.1       root     1132: @@:
1.1.1.4 ! root     1133:        bsr     restore_fline
1.1       root     1134:        tst.l   d7
1.1.1.4 ! root     1135:        beq     @f
        !          1136:        PRINT   msg_fail_trap(pc)
1.1       root     1137:        rts
                   1138: @@:
1.1.1.4 ! root     1139:        lea.l   srcdata+24(pc),a1
        !          1140:        cmp.l   a1,a0
        !          1141:        beq     @f
        !          1142:        pea.l   msg_fail_addr(pc)
        !          1143:        move.l  a1,-(sp)
        !          1144:        move.l  a0,-(sp)
        !          1145:        bsr     result
        !          1146:        lea.l   12(sp),sp
        !          1147: @@:
        !          1148:        lea.l   workarea(pc),a2
        !          1149:        ; compare FP0
        !          1150:        pea.l   msg_fail_fp0(pc)
        !          1151:        pea.l   (initdata+0*12)(pc)
        !          1152:        fmove.x fp0,(a2)
        !          1153:        pea.l   (a2)
        !          1154:        bsr     check_ext
        !          1155:        lea.l   12(sp),sp
        !          1156:        ; compare FP1
        !          1157:        pea.l   msg_fail_fp1(pc)
        !          1158:        pea.l   srcdata(pc)
        !          1159:        fmove.x fp1,(a2)
        !          1160:        pea.l   (a2)
        !          1161:        bsr     check_ext
        !          1162:        lea.l   12(sp),sp
        !          1163:        ; compare FP2
        !          1164:        pea.l   msg_fail_fp2(pc)
        !          1165:        pea.l   srcdata+12(pc)
        !          1166:        fmove.x fp2,(a2)
        !          1167:        pea.l   (a2)
        !          1168:        bsr     check_ext
        !          1169:        lea.l   12(sp),sp
        !          1170:        ; compare FP3
        !          1171:        pea.l   msg_fail_fp3(pc)
        !          1172:        pea.l   (initdata+3*12)(pc)
        !          1173:        fmove.x fp3,(a2)
        !          1174:        pea.l   (a2)
        !          1175:        bsr     check_ext
        !          1176:        lea.l   12(sp),sp
        !          1177:        ; compare FP4
        !          1178:        pea.l   msg_fail_fp4(pc)
        !          1179:        pea.l   (initdata+4*12)(pc)
        !          1180:        fmove.x fp4,(a2)
        !          1181:        pea.l   (a2)
        !          1182:        bsr     check_ext
        !          1183:        lea.l   12(sp),sp
        !          1184:        ; compare FP5
        !          1185:        pea.l   msg_fail_fp5(pc)
        !          1186:        pea.l   (initdata+5*12)(pc)
        !          1187:        fmove.x fp5,(a2)
        !          1188:        pea.l   (a2)
        !          1189:        bsr     check_ext
        !          1190:        lea.l   12(sp),sp
        !          1191:        ; compare FP6
        !          1192:        pea.l   msg_fail_fp6(pc)
        !          1193:        pea.l   (initdata+6*12)(pc)
        !          1194:        fmove.x fp6,(a2)
        !          1195:        pea.l   (a2)
        !          1196:        bsr     check_ext
        !          1197:        lea.l   12(sp),sp
        !          1198:        ; compare FP7
        !          1199:        pea.l   msg_fail_fp7(pc)
        !          1200:        pea.l   (initdata+7*12)(pc)
        !          1201:        fmove.x fp7,(a2)
        !          1202:        pea.l   (a2)
        !          1203:        bsr     check_ext
        !          1204:        lea.l   12(sp),sp
        !          1205: 
        !          1206:        tst.l   d7
        !          1207:        bne     @f
        !          1208:        PRINT   msg_ok(pc)
        !          1209: @@:
        !          1210:        rts
        !          1211: 
        !          1212: ; to,ctrl,sta,EA=- (hard)
        !          1213: test_18:
        !          1214:        moveq.l #-8,d0
        !          1215:        and.w   d5,d0
        !          1216:        PRINT   msg_test_18+8(pc,d0.w)
        !          1217:        bsr     set_fline
        !          1218:        moveq.l #0,d7
        !          1219:        lea.l   @f,a3
        !          1220:        .dc.l   $f220d060
        !          1221: @@:
        !          1222:        bsr     restore_fline
        !          1223:        tst.l   d7
        !          1224:        bne     @f
        !          1225:        PRINT   msg_fail_notrap(pc)
        !          1226:        rts
        !          1227: @@:
        !          1228:        PRINT   msg_oktrap(pc)
        !          1229:        rts
        !          1230: 
        !          1231: ; to,ctrl,sta,EA=r
        !          1232: test_19:
        !          1233:        moveq.l #-8,d0
        !          1234:        and.w   d5,d0
        !          1235:        PRINT   msg_test_19+8(pc,d0.w)
        !          1236:        bsr     init_from
        !          1237:        lea.l   srcdata(pc),a0
        !          1238:        bsr     set_fline
        !          1239:        moveq.l #0,d7
        !          1240:        lea.l   @f,a3
        !          1241:        .dc.l   $f228d060
        !          1242:        .dc.w   0
        !          1243: @@:
        !          1244:        bsr     restore_fline
        !          1245:        tst.l   d7
        !          1246:        beq     @f
        !          1247:        PRINT   msg_fail_trap(pc)
        !          1248:        rts
        !          1249: @@:
        !          1250:        lea.l   srcdata(pc),a1
        !          1251:        cmp.l   a1,a0
        !          1252:        beq     @f
        !          1253:        pea.l   msg_fail_addr(pc)
        !          1254:        move.l  a1,-(sp)
        !          1255:        move.l  a0,-(sp)
        !          1256:        bsr     result
        !          1257:        lea.l   12(sp),sp
        !          1258: @@:
        !          1259:        lea.l   workarea(pc),a2
        !          1260:        ; compare FP0
        !          1261:        pea.l   msg_fail_fp0(pc)
        !          1262:        pea.l   (initdata+0*12)(pc)
        !          1263:        fmove.x fp0,(a2)
        !          1264:        pea.l   (a2)
        !          1265:        bsr     check_ext
        !          1266:        lea.l   12(sp),sp
        !          1267:        ; compare FP1
        !          1268:        pea.l   msg_fail_fp1(pc)
        !          1269:        pea.l   srcdata(pc)
        !          1270:        fmove.x fp1,(a2)
        !          1271:        pea.l   (a2)
        !          1272:        bsr     check_ext
        !          1273:        lea.l   12(sp),sp
        !          1274:        ; compare FP2
        !          1275:        pea.l   msg_fail_fp2(pc)
        !          1276:        pea.l   srcdata+12(pc)
        !          1277:        fmove.x fp2,(a2)
        !          1278:        pea.l   (a2)
        !          1279:        bsr     check_ext
        !          1280:        lea.l   12(sp),sp
        !          1281:        ; compare FP3
        !          1282:        pea.l   msg_fail_fp3(pc)
        !          1283:        pea.l   (initdata+3*12)(pc)
        !          1284:        fmove.x fp3,(a2)
        !          1285:        pea.l   (a2)
        !          1286:        bsr     check_ext
        !          1287:        lea.l   12(sp),sp
        !          1288:        ; compare FP4
        !          1289:        pea.l   msg_fail_fp4(pc)
        !          1290:        pea.l   (initdata+4*12)(pc)
        !          1291:        fmove.x fp4,(a2)
        !          1292:        pea.l   (a2)
        !          1293:        bsr     check_ext
        !          1294:        lea.l   12(sp),sp
        !          1295:        ; compare FP5
        !          1296:        pea.l   msg_fail_fp5(pc)
        !          1297:        pea.l   (initdata+5*12)(pc)
        !          1298:        fmove.x fp5,(a2)
        !          1299:        pea.l   (a2)
        !          1300:        bsr     check_ext
        !          1301:        lea.l   12(sp),sp
        !          1302:        ; compare FP6
        !          1303:        pea.l   msg_fail_fp6(pc)
        !          1304:        pea.l   (initdata+6*12)(pc)
        !          1305:        fmove.x fp6,(a2)
        !          1306:        pea.l   (a2)
        !          1307:        bsr     check_ext
        !          1308:        lea.l   12(sp),sp
        !          1309:        ; compare FP7
        !          1310:        pea.l   msg_fail_fp7(pc)
        !          1311:        pea.l   (initdata+7*12)(pc)
        !          1312:        fmove.x fp7,(a2)
        !          1313:        pea.l   (a2)
        !          1314:        bsr     check_ext
        !          1315:        lea.l   12(sp),sp
        !          1316: 
        !          1317:        tst.l   d7
        !          1318:        bne     @f
        !          1319:        PRINT   msg_ok(pc)
        !          1320: @@:
        !          1321:        rts
        !          1322: 
        !          1323: ; to,ctrl,sta,EA=x
        !          1324: test_20:
        !          1325:        moveq.l #-8,d0
        !          1326:        and.w   d5,d0
        !          1327:        PRINT   msg_test_20+8(pc,d0.w)
        !          1328:        bsr     init_from
        !          1329:        lea.l   srcdata(pc),a0
        !          1330:        bsr     set_fline
        !          1331:        moveq.l #0,d7
        !          1332:        lea.l   @f,a3
        !          1333:        .dc.l   $f230d060
        !          1334:        .dc.w   $4000
        !          1335: @@:
        !          1336:        bsr     restore_fline
        !          1337:        tst.l   d7
        !          1338:        beq     @f
        !          1339:        PRINT   msg_fail_trap(pc)
        !          1340:        rts
        !          1341: @@:
        !          1342:        lea.l   srcdata(pc),a1
        !          1343:        cmp.l   a1,a0
        !          1344:        beq     @f
        !          1345:        pea.l   msg_fail_addr(pc)
        !          1346:        move.l  a1,-(sp)
        !          1347:        move.l  a0,-(sp)
        !          1348:        bsr     result
        !          1349:        lea.l   12(sp),sp
        !          1350: @@:
        !          1351:        lea.l   workarea(pc),a2
        !          1352:        ; compare FP0
        !          1353:        pea.l   msg_fail_fp0(pc)
        !          1354:        pea.l   (initdata+0*12)(pc)
        !          1355:        fmove.x fp0,(a2)
        !          1356:        pea.l   (a2)
        !          1357:        bsr     check_ext
        !          1358:        lea.l   12(sp),sp
        !          1359:        ; compare FP1
        !          1360:        pea.l   msg_fail_fp1(pc)
        !          1361:        pea.l   srcdata(pc)
        !          1362:        fmove.x fp1,(a2)
        !          1363:        pea.l   (a2)
        !          1364:        bsr     check_ext
        !          1365:        lea.l   12(sp),sp
        !          1366:        ; compare FP2
        !          1367:        pea.l   msg_fail_fp2(pc)
        !          1368:        pea.l   srcdata+12(pc)
        !          1369:        fmove.x fp2,(a2)
        !          1370:        pea.l   (a2)
        !          1371:        bsr     check_ext
        !          1372:        lea.l   12(sp),sp
        !          1373:        ; compare FP3
        !          1374:        pea.l   msg_fail_fp3(pc)
        !          1375:        pea.l   (initdata+3*12)(pc)
        !          1376:        fmove.x fp3,(a2)
        !          1377:        pea.l   (a2)
        !          1378:        bsr     check_ext
        !          1379:        lea.l   12(sp),sp
        !          1380:        ; compare FP4
        !          1381:        pea.l   msg_fail_fp4(pc)
        !          1382:        pea.l   (initdata+4*12)(pc)
        !          1383:        fmove.x fp4,(a2)
        !          1384:        pea.l   (a2)
        !          1385:        bsr     check_ext
        !          1386:        lea.l   12(sp),sp
        !          1387:        ; compare FP5
        !          1388:        pea.l   msg_fail_fp5(pc)
        !          1389:        pea.l   (initdata+5*12)(pc)
        !          1390:        fmove.x fp5,(a2)
        !          1391:        pea.l   (a2)
        !          1392:        bsr     check_ext
        !          1393:        lea.l   12(sp),sp
        !          1394:        ; compare FP6
        !          1395:        pea.l   msg_fail_fp6(pc)
        !          1396:        pea.l   (initdata+6*12)(pc)
        !          1397:        fmove.x fp6,(a2)
        !          1398:        pea.l   (a2)
        !          1399:        bsr     check_ext
        !          1400:        lea.l   12(sp),sp
        !          1401:        ; compare FP7
        !          1402:        pea.l   msg_fail_fp7(pc)
        !          1403:        pea.l   (initdata+7*12)(pc)
        !          1404:        fmove.x fp7,(a2)
        !          1405:        pea.l   (a2)
        !          1406:        bsr     check_ext
        !          1407:        lea.l   12(sp),sp
        !          1408: 
        !          1409:        tst.l   d7
        !          1410:        bne     @f
        !          1411:        PRINT   msg_ok(pc)
        !          1412: @@:
        !          1413:        rts
        !          1414: 
        !          1415: ; to,ctrl,dyn,EA=d (hard)
        !          1416: test_21:
        !          1417:        moveq.l #-8,d0
        !          1418:        and.w   d5,d0
        !          1419:        PRINT   msg_test_21+8(pc,d0.w)
        !          1420:        bsr     set_fline
        !          1421:        moveq.l #0,d7
        !          1422:        lea.l   @f,a3
        !          1423:        .dc.l   $f200d860
        !          1424: @@:
        !          1425:        bsr     restore_fline
        !          1426:        tst.l   d7
        !          1427:        bne     @f
        !          1428:        PRINT   msg_fail_notrap(pc)
        !          1429:        rts
        !          1430: @@:
        !          1431:        PRINT   msg_oktrap(pc)
        !          1432:        rts
        !          1433: 
        !          1434: ; to,ctrl,dyn,EA=a (hard)
        !          1435: test_22:
        !          1436:        moveq.l #-8,d0
        !          1437:        and.w   d5,d0
        !          1438:        PRINT   msg_test_22+8(pc,d0.w)
        !          1439:        bsr     set_fline
        !          1440:        moveq.l #0,d7
        !          1441:        lea.l   @f,a3
        !          1442:        .dc.l   $f208d860
        !          1443: @@:
        !          1444:        bsr     restore_fline
        !          1445:        tst.l   d7
        !          1446:        bne     @f
        !          1447:        PRINT   msg_fail_notrap(pc)
        !          1448:        rts
        !          1449: @@:
        !          1450:        PRINT   msg_oktrap(pc)
        !          1451:        rts
        !          1452: 
        !          1453: ; to,ctrl,dyn,EA=m
        !          1454: test_23:
        !          1455:        moveq.l #-8,d0
        !          1456:        and.w   d5,d0
        !          1457:        PRINT   msg_test_23+8(pc,d0.w)
        !          1458:        bsr     init_from
        !          1459:        lea.l   srcdata(pc),a0
        !          1460:        bsr     set_fline
        !          1461:        moveq.l #0,d7
        !          1462:        lea.l   @f,a3
        !          1463:        .dc.l   $f210d860
        !          1464: @@:
        !          1465:        bsr     restore_fline
        !          1466:        tst.l   d7
        !          1467:        beq     @f
        !          1468:        PRINT   msg_fail_trap(pc)
        !          1469:        rts
        !          1470: @@:
        !          1471:        lea.l   srcdata(pc),a1
        !          1472:        cmp.l   a1,a0
        !          1473:        beq     @f
        !          1474:        pea.l   msg_fail_addr(pc)
        !          1475:        move.l  a1,-(sp)
        !          1476:        move.l  a0,-(sp)
        !          1477:        bsr     result
        !          1478:        lea.l   12(sp),sp
        !          1479: @@:
        !          1480:        lea.l   workarea(pc),a2
        !          1481:        ; compare FP0
        !          1482:        pea.l   msg_fail_fp0(pc)
        !          1483:        pea.l   (initdata+0*12)(pc)
        !          1484:        fmove.x fp0,(a2)
        !          1485:        pea.l   (a2)
        !          1486:        bsr     check_ext
        !          1487:        lea.l   12(sp),sp
        !          1488:        ; compare FP1
        !          1489:        pea.l   msg_fail_fp1(pc)
        !          1490:        pea.l   (initdata+1*12)(pc)
        !          1491:        fmove.x fp1,(a2)
        !          1492:        pea.l   (a2)
        !          1493:        bsr     check_ext
        !          1494:        lea.l   12(sp),sp
        !          1495:        ; compare FP2
        !          1496:        pea.l   msg_fail_fp2(pc)
        !          1497:        pea.l   srcdata(pc)
        !          1498:        fmove.x fp2,(a2)
        !          1499:        pea.l   (a2)
        !          1500:        bsr     check_ext
        !          1501:        lea.l   12(sp),sp
        !          1502:        ; compare FP3
        !          1503:        pea.l   msg_fail_fp3(pc)
        !          1504:        pea.l   srcdata+12(pc)
        !          1505:        fmove.x fp3,(a2)
        !          1506:        pea.l   (a2)
        !          1507:        bsr     check_ext
        !          1508:        lea.l   12(sp),sp
        !          1509:        ; compare FP4
        !          1510:        pea.l   msg_fail_fp4(pc)
        !          1511:        pea.l   (initdata+4*12)(pc)
        !          1512:        fmove.x fp4,(a2)
        !          1513:        pea.l   (a2)
        !          1514:        bsr     check_ext
        !          1515:        lea.l   12(sp),sp
        !          1516:        ; compare FP5
        !          1517:        pea.l   msg_fail_fp5(pc)
        !          1518:        pea.l   (initdata+5*12)(pc)
        !          1519:        fmove.x fp5,(a2)
        !          1520:        pea.l   (a2)
        !          1521:        bsr     check_ext
        !          1522:        lea.l   12(sp),sp
        !          1523:        ; compare FP6
        !          1524:        pea.l   msg_fail_fp6(pc)
        !          1525:        pea.l   (initdata+6*12)(pc)
        !          1526:        fmove.x fp6,(a2)
        !          1527:        pea.l   (a2)
        !          1528:        bsr     check_ext
        !          1529:        lea.l   12(sp),sp
        !          1530:        ; compare FP7
        !          1531:        pea.l   msg_fail_fp7(pc)
        !          1532:        pea.l   (initdata+7*12)(pc)
        !          1533:        fmove.x fp7,(a2)
        !          1534:        pea.l   (a2)
        !          1535:        bsr     check_ext
        !          1536:        lea.l   12(sp),sp
        !          1537: 
        !          1538:        tst.l   d7
        !          1539:        bne     @f
        !          1540:        PRINT   msg_ok(pc)
        !          1541: @@:
        !          1542:        rts
        !          1543: 
        !          1544: ; to,ctrl,dyn,EA=+
        !          1545: test_24:
        !          1546:        moveq.l #-8,d0
        !          1547:        and.w   d5,d0
        !          1548:        PRINT   msg_test_24+8(pc,d0.w)
        !          1549:        bsr     init_from
        !          1550:        lea.l   srcdata(pc),a0
        !          1551:        bsr     set_fline
        !          1552:        moveq.l #0,d7
        !          1553:        lea.l   @f,a3
        !          1554:        .dc.l   $f218d860
        !          1555: @@:
        !          1556:        bsr     restore_fline
        !          1557:        tst.l   d7
        !          1558:        beq     @f
        !          1559:        PRINT   msg_fail_trap(pc)
        !          1560:        rts
        !          1561: @@:
        !          1562:        lea.l   srcdata+24(pc),a1
        !          1563:        cmp.l   a1,a0
        !          1564:        beq     @f
        !          1565:        pea.l   msg_fail_addr(pc)
        !          1566:        move.l  a1,-(sp)
        !          1567:        move.l  a0,-(sp)
        !          1568:        bsr     result
        !          1569:        lea.l   12(sp),sp
        !          1570: @@:
        !          1571:        lea.l   workarea(pc),a2
        !          1572:        ; compare FP0
        !          1573:        pea.l   msg_fail_fp0(pc)
        !          1574:        pea.l   (initdata+0*12)(pc)
        !          1575:        fmove.x fp0,(a2)
        !          1576:        pea.l   (a2)
        !          1577:        bsr     check_ext
        !          1578:        lea.l   12(sp),sp
        !          1579:        ; compare FP1
        !          1580:        pea.l   msg_fail_fp1(pc)
        !          1581:        pea.l   (initdata+1*12)(pc)
        !          1582:        fmove.x fp1,(a2)
        !          1583:        pea.l   (a2)
        !          1584:        bsr     check_ext
        !          1585:        lea.l   12(sp),sp
        !          1586:        ; compare FP2
        !          1587:        pea.l   msg_fail_fp2(pc)
        !          1588:        pea.l   srcdata(pc)
        !          1589:        fmove.x fp2,(a2)
        !          1590:        pea.l   (a2)
        !          1591:        bsr     check_ext
        !          1592:        lea.l   12(sp),sp
        !          1593:        ; compare FP3
        !          1594:        pea.l   msg_fail_fp3(pc)
        !          1595:        pea.l   srcdata+12(pc)
        !          1596:        fmove.x fp3,(a2)
        !          1597:        pea.l   (a2)
        !          1598:        bsr     check_ext
        !          1599:        lea.l   12(sp),sp
        !          1600:        ; compare FP4
        !          1601:        pea.l   msg_fail_fp4(pc)
        !          1602:        pea.l   (initdata+4*12)(pc)
        !          1603:        fmove.x fp4,(a2)
        !          1604:        pea.l   (a2)
        !          1605:        bsr     check_ext
        !          1606:        lea.l   12(sp),sp
        !          1607:        ; compare FP5
        !          1608:        pea.l   msg_fail_fp5(pc)
        !          1609:        pea.l   (initdata+5*12)(pc)
        !          1610:        fmove.x fp5,(a2)
        !          1611:        pea.l   (a2)
        !          1612:        bsr     check_ext
        !          1613:        lea.l   12(sp),sp
        !          1614:        ; compare FP6
        !          1615:        pea.l   msg_fail_fp6(pc)
        !          1616:        pea.l   (initdata+6*12)(pc)
        !          1617:        fmove.x fp6,(a2)
        !          1618:        pea.l   (a2)
        !          1619:        bsr     check_ext
        !          1620:        lea.l   12(sp),sp
        !          1621:        ; compare FP7
        !          1622:        pea.l   msg_fail_fp7(pc)
        !          1623:        pea.l   (initdata+7*12)(pc)
        !          1624:        fmove.x fp7,(a2)
        !          1625:        pea.l   (a2)
        !          1626:        bsr     check_ext
        !          1627:        lea.l   12(sp),sp
        !          1628: 
        !          1629:        tst.l   d7
        !          1630:        bne     @f
        !          1631:        PRINT   msg_ok(pc)
        !          1632: @@:
        !          1633:        rts
        !          1634: 
        !          1635: ; to,ctrl,dyn,EA=- (hard)
        !          1636: test_25:
        !          1637:        moveq.l #-8,d0
        !          1638:        and.w   d5,d0
        !          1639:        PRINT   msg_test_25+8(pc,d0.w)
        !          1640:        bsr     set_fline
        !          1641:        moveq.l #0,d7
        !          1642:        lea.l   @f,a3
        !          1643:        .dc.l   $f220d860
        !          1644: @@:
        !          1645:        bsr     restore_fline
        !          1646:        tst.l   d7
        !          1647:        bne     @f
        !          1648:        PRINT   msg_fail_notrap(pc)
        !          1649:        rts
        !          1650: @@:
        !          1651:        PRINT   msg_oktrap(pc)
        !          1652:        rts
        !          1653: 
        !          1654: ; to,ctrl,dyn,EA=r
        !          1655: test_26:
        !          1656:        moveq.l #-8,d0
        !          1657:        and.w   d5,d0
        !          1658:        PRINT   msg_test_26+8(pc,d0.w)
        !          1659:        bsr     init_from
        !          1660:        lea.l   srcdata(pc),a0
        !          1661:        bsr     set_fline
        !          1662:        moveq.l #0,d7
        !          1663:        lea.l   @f,a3
        !          1664:        .dc.l   $f228d860
        !          1665:        .dc.w   0
        !          1666: @@:
        !          1667:        bsr     restore_fline
        !          1668:        tst.l   d7
        !          1669:        beq     @f
        !          1670:        PRINT   msg_fail_trap(pc)
        !          1671:        rts
        !          1672: @@:
        !          1673:        lea.l   srcdata(pc),a1
        !          1674:        cmp.l   a1,a0
        !          1675:        beq     @f
        !          1676:        pea.l   msg_fail_addr(pc)
        !          1677:        move.l  a1,-(sp)
        !          1678:        move.l  a0,-(sp)
        !          1679:        bsr     result
        !          1680:        lea.l   12(sp),sp
        !          1681: @@:
        !          1682:        lea.l   workarea(pc),a2
        !          1683:        ; compare FP0
        !          1684:        pea.l   msg_fail_fp0(pc)
        !          1685:        pea.l   (initdata+0*12)(pc)
        !          1686:        fmove.x fp0,(a2)
        !          1687:        pea.l   (a2)
        !          1688:        bsr     check_ext
        !          1689:        lea.l   12(sp),sp
        !          1690:        ; compare FP1
        !          1691:        pea.l   msg_fail_fp1(pc)
        !          1692:        pea.l   (initdata+1*12)(pc)
        !          1693:        fmove.x fp1,(a2)
        !          1694:        pea.l   (a2)
        !          1695:        bsr     check_ext
        !          1696:        lea.l   12(sp),sp
        !          1697:        ; compare FP2
        !          1698:        pea.l   msg_fail_fp2(pc)
        !          1699:        pea.l   srcdata(pc)
        !          1700:        fmove.x fp2,(a2)
        !          1701:        pea.l   (a2)
        !          1702:        bsr     check_ext
        !          1703:        lea.l   12(sp),sp
        !          1704:        ; compare FP3
        !          1705:        pea.l   msg_fail_fp3(pc)
        !          1706:        pea.l   srcdata+12(pc)
        !          1707:        fmove.x fp3,(a2)
        !          1708:        pea.l   (a2)
        !          1709:        bsr     check_ext
        !          1710:        lea.l   12(sp),sp
        !          1711:        ; compare FP4
        !          1712:        pea.l   msg_fail_fp4(pc)
        !          1713:        pea.l   (initdata+4*12)(pc)
        !          1714:        fmove.x fp4,(a2)
        !          1715:        pea.l   (a2)
        !          1716:        bsr     check_ext
        !          1717:        lea.l   12(sp),sp
        !          1718:        ; compare FP5
        !          1719:        pea.l   msg_fail_fp5(pc)
        !          1720:        pea.l   (initdata+5*12)(pc)
        !          1721:        fmove.x fp5,(a2)
        !          1722:        pea.l   (a2)
        !          1723:        bsr     check_ext
        !          1724:        lea.l   12(sp),sp
        !          1725:        ; compare FP6
        !          1726:        pea.l   msg_fail_fp6(pc)
        !          1727:        pea.l   (initdata+6*12)(pc)
        !          1728:        fmove.x fp6,(a2)
        !          1729:        pea.l   (a2)
        !          1730:        bsr     check_ext
        !          1731:        lea.l   12(sp),sp
        !          1732:        ; compare FP7
        !          1733:        pea.l   msg_fail_fp7(pc)
        !          1734:        pea.l   (initdata+7*12)(pc)
        !          1735:        fmove.x fp7,(a2)
        !          1736:        pea.l   (a2)
        !          1737:        bsr     check_ext
        !          1738:        lea.l   12(sp),sp
        !          1739: 
        !          1740:        tst.l   d7
        !          1741:        bne     @f
        !          1742:        PRINT   msg_ok(pc)
        !          1743: @@:
        !          1744:        rts
        !          1745: 
        !          1746: ; to,ctrl,dyn,EA=x
        !          1747: test_27:
        !          1748:        moveq.l #-8,d0
        !          1749:        and.w   d5,d0
        !          1750:        PRINT   msg_test_27+8(pc,d0.w)
        !          1751:        bsr     init_from
        !          1752:        lea.l   srcdata(pc),a0
        !          1753:        bsr     set_fline
        !          1754:        moveq.l #0,d7
        !          1755:        lea.l   @f,a3
        !          1756:        .dc.l   $f230d860
        !          1757:        .dc.w   $4000
        !          1758: @@:
        !          1759:        bsr     restore_fline
        !          1760:        tst.l   d7
        !          1761:        beq     @f
        !          1762:        PRINT   msg_fail_trap(pc)
        !          1763:        rts
        !          1764: @@:
        !          1765:        lea.l   srcdata(pc),a1
        !          1766:        cmp.l   a1,a0
        !          1767:        beq     @f
        !          1768:        pea.l   msg_fail_addr(pc)
        !          1769:        move.l  a1,-(sp)
        !          1770:        move.l  a0,-(sp)
        !          1771:        bsr     result
        !          1772:        lea.l   12(sp),sp
        !          1773: @@:
        !          1774:        lea.l   workarea(pc),a2
        !          1775:        ; compare FP0
        !          1776:        pea.l   msg_fail_fp0(pc)
        !          1777:        pea.l   (initdata+0*12)(pc)
        !          1778:        fmove.x fp0,(a2)
        !          1779:        pea.l   (a2)
        !          1780:        bsr     check_ext
        !          1781:        lea.l   12(sp),sp
        !          1782:        ; compare FP1
        !          1783:        pea.l   msg_fail_fp1(pc)
        !          1784:        pea.l   (initdata+1*12)(pc)
        !          1785:        fmove.x fp1,(a2)
        !          1786:        pea.l   (a2)
        !          1787:        bsr     check_ext
        !          1788:        lea.l   12(sp),sp
        !          1789:        ; compare FP2
        !          1790:        pea.l   msg_fail_fp2(pc)
        !          1791:        pea.l   srcdata(pc)
        !          1792:        fmove.x fp2,(a2)
        !          1793:        pea.l   (a2)
        !          1794:        bsr     check_ext
        !          1795:        lea.l   12(sp),sp
        !          1796:        ; compare FP3
        !          1797:        pea.l   msg_fail_fp3(pc)
        !          1798:        pea.l   srcdata+12(pc)
        !          1799:        fmove.x fp3,(a2)
        !          1800:        pea.l   (a2)
        !          1801:        bsr     check_ext
        !          1802:        lea.l   12(sp),sp
        !          1803:        ; compare FP4
        !          1804:        pea.l   msg_fail_fp4(pc)
        !          1805:        pea.l   (initdata+4*12)(pc)
        !          1806:        fmove.x fp4,(a2)
        !          1807:        pea.l   (a2)
        !          1808:        bsr     check_ext
        !          1809:        lea.l   12(sp),sp
        !          1810:        ; compare FP5
        !          1811:        pea.l   msg_fail_fp5(pc)
        !          1812:        pea.l   (initdata+5*12)(pc)
        !          1813:        fmove.x fp5,(a2)
        !          1814:        pea.l   (a2)
        !          1815:        bsr     check_ext
        !          1816:        lea.l   12(sp),sp
        !          1817:        ; compare FP6
        !          1818:        pea.l   msg_fail_fp6(pc)
        !          1819:        pea.l   (initdata+6*12)(pc)
        !          1820:        fmove.x fp6,(a2)
        !          1821:        pea.l   (a2)
        !          1822:        bsr     check_ext
        !          1823:        lea.l   12(sp),sp
        !          1824:        ; compare FP7
        !          1825:        pea.l   msg_fail_fp7(pc)
        !          1826:        pea.l   (initdata+7*12)(pc)
        !          1827:        fmove.x fp7,(a2)
        !          1828:        pea.l   (a2)
        !          1829:        bsr     check_ext
        !          1830:        lea.l   12(sp),sp
        !          1831: 
        !          1832:        tst.l   d7
        !          1833:        bne     @f
        !          1834:        PRINT   msg_ok(pc)
        !          1835: @@:
        !          1836:        rts
        !          1837: 
        !          1838: ; from,pred,sta,EA=d (hard)
        !          1839: test_28:
        !          1840:        moveq.l #-8,d0
        !          1841:        and.w   d5,d0
        !          1842:        PRINT   msg_test_28+8(pc,d0.w)
        !          1843:        bsr     set_fline
        !          1844:        moveq.l #0,d7
        !          1845:        lea.l   @f,a3
        !          1846:        .dc.l   $f200e060
        !          1847: @@:
        !          1848:        bsr     restore_fline
        !          1849:        tst.l   d7
        !          1850:        bne     @f
        !          1851:        PRINT   msg_fail_notrap(pc)
        !          1852:        rts
        !          1853: @@:
        !          1854:        PRINT   msg_oktrap(pc)
        !          1855:        rts
        !          1856: 
        !          1857: ; from,pred,sta,EA=a (hard)
        !          1858: test_29:
        !          1859:        moveq.l #-8,d0
        !          1860:        and.w   d5,d0
        !          1861:        PRINT   msg_test_29+8(pc,d0.w)
        !          1862:        bsr     set_fline
        !          1863:        moveq.l #0,d7
        !          1864:        lea.l   @f,a3
        !          1865:        .dc.l   $f208e060
        !          1866: @@:
        !          1867:        bsr     restore_fline
        !          1868:        tst.l   d7
        !          1869:        bne     @f
        !          1870:        PRINT   msg_fail_notrap(pc)
        !          1871:        rts
        !          1872: @@:
        !          1873:        PRINT   msg_oktrap(pc)
        !          1874:        rts
        !          1875: 
        !          1876: ; from,pred,sta,EA=m (hard)
        !          1877: test_30:
        !          1878:        moveq.l #-8,d0
        !          1879:        and.w   d5,d0
        !          1880:        PRINT   msg_test_30+8(pc,d0.w)
        !          1881:        bsr     init_from
        !          1882:        lea.l   workarea(pc),a0
        !          1883:        bsr     set_fline
        !          1884:        moveq.l #0,d7
        !          1885:        lea.l   @f,a3
        !          1886:        .dc.l   $f210e060
        !          1887: @@:
        !          1888:        bsr     restore_fline
        !          1889:        tst.l   d7
        !          1890:        beq     @f
        !          1891:        PRINT   msg_fail_trap(pc)
        !          1892:        rts
        !          1893: @@:
        !          1894:        lea.l   workarea(pc),a1
        !          1895:        cmp.l   a1,a0
        !          1896:        beq     @f
        !          1897:        pea.l   msg_fail_addr(pc)
        !          1898:        move.l  a1,-(sp)
        !          1899:        move.l  a0,-(sp)
        !          1900:        bsr     result
        !          1901:        lea.l   12(sp),sp
        !          1902: @@:
        !          1903:        ; compare first one
        !          1904:        pea.l   msg_fail_1st(pc)
        !          1905:        pea.l   (initdata+6*12)(pc)
        !          1906:        pea.l   (0*12)(a1)
        !          1907:        bsr     check_ext
        !          1908:        lea.l   12(sp),sp
        !          1909:        ; compare second one
        !          1910:        pea.l   msg_fail_2nd(pc)
        !          1911:        pea.l   (initdata+5*12)(pc)
        !          1912:        pea.l   (1*12)(a1)
        !          1913:        bsr     check_ext
        !          1914:        lea.l   12(sp),sp
        !          1915: 
        !          1916:        tst.l   d7
        !          1917:        bne     @f
        !          1918:        PRINT   msg_ok(pc)
        !          1919: @@:
        !          1920:        rts
        !          1921: 
        !          1922: ; from,pred,sta,EA=+ (hard)
        !          1923: test_31:
        !          1924:        moveq.l #-8,d0
        !          1925:        and.w   d5,d0
        !          1926:        PRINT   msg_test_31+8(pc,d0.w)
        !          1927:        bsr     set_fline
        !          1928:        moveq.l #0,d7
        !          1929:        lea.l   @f,a3
        !          1930:        .dc.l   $f218e060
        !          1931: @@:
        !          1932:        bsr     restore_fline
        !          1933:        tst.l   d7
        !          1934:        bne     @f
        !          1935:        PRINT   msg_fail_notrap(pc)
        !          1936:        rts
        !          1937: @@:
        !          1938:        PRINT   msg_oktrap(pc)
        !          1939:        rts
        !          1940: 
        !          1941: ; from,pred,sta,EA=-
        !          1942: test_32:
        !          1943:        moveq.l #-8,d0
        !          1944:        and.w   d5,d0
        !          1945:        PRINT   msg_test_32+8(pc,d0.w)
        !          1946:        bsr     init_from
        !          1947:        lea.l   (workarea+24)(pc),a0
        !          1948:        bsr     set_fline
        !          1949:        moveq.l #0,d7
        !          1950:        lea.l   @f,a3
        !          1951:        .dc.l   $f220e060
        !          1952: @@:
        !          1953:        bsr     restore_fline
        !          1954:        tst.l   d7
        !          1955:        beq     @f
        !          1956:        PRINT   msg_fail_trap(pc)
        !          1957:        rts
        !          1958: @@:
        !          1959:        lea.l   workarea(pc),a1
        !          1960:        cmp.l   a1,a0
        !          1961:        beq     @f
        !          1962:        pea.l   msg_fail_addr(pc)
        !          1963:        move.l  a1,-(sp)
        !          1964:        move.l  a0,-(sp)
        !          1965:        bsr     result
        !          1966:        lea.l   12(sp),sp
        !          1967: @@:
        !          1968:        ; compare first one
        !          1969:        pea.l   msg_fail_1st(pc)
        !          1970:        pea.l   (initdata+6*12)(pc)
        !          1971:        pea.l   (1*12)(a1)
        !          1972:        bsr     check_ext
        !          1973:        lea.l   12(sp),sp
        !          1974:        ; compare second one
        !          1975:        pea.l   msg_fail_2nd(pc)
        !          1976:        pea.l   (initdata+5*12)(pc)
        !          1977:        pea.l   (0*12)(a1)
        !          1978:        bsr     check_ext
        !          1979:        lea.l   12(sp),sp
        !          1980: 
        !          1981:        tst.l   d7
        !          1982:        bne     @f
        !          1983:        PRINT   msg_ok(pc)
        !          1984: @@:
        !          1985:        rts
        !          1986: 
        !          1987: ; from,pred,sta,EA=r (hard)
        !          1988: test_33:
        !          1989:        moveq.l #-8,d0
        !          1990:        and.w   d5,d0
        !          1991:        PRINT   msg_test_33+8(pc,d0.w)
        !          1992:        bsr     init_from
        !          1993:        lea.l   workarea(pc),a0
        !          1994:        bsr     set_fline
        !          1995:        moveq.l #0,d7
        !          1996:        lea.l   @f,a3
        !          1997:        .dc.l   $f228e060
        !          1998:        .dc.w   0
        !          1999: @@:
        !          2000:        bsr     restore_fline
        !          2001:        tst.l   d7
        !          2002:        beq     @f
        !          2003:        PRINT   msg_fail_trap(pc)
        !          2004:        rts
        !          2005: @@:
        !          2006:        lea.l   workarea(pc),a1
        !          2007:        cmp.l   a1,a0
        !          2008:        beq     @f
        !          2009:        pea.l   msg_fail_addr(pc)
        !          2010:        move.l  a1,-(sp)
        !          2011:        move.l  a0,-(sp)
        !          2012:        bsr     result
        !          2013:        lea.l   12(sp),sp
        !          2014: @@:
        !          2015:        ; compare first one
        !          2016:        pea.l   msg_fail_1st(pc)
        !          2017:        pea.l   (initdata+6*12)(pc)
        !          2018:        pea.l   (0*12)(a1)
        !          2019:        bsr     check_ext
        !          2020:        lea.l   12(sp),sp
        !          2021:        ; compare second one
        !          2022:        pea.l   msg_fail_2nd(pc)
        !          2023:        pea.l   (initdata+5*12)(pc)
        !          2024:        pea.l   (1*12)(a1)
        !          2025:        bsr     check_ext
        !          2026:        lea.l   12(sp),sp
        !          2027: 
        !          2028:        tst.l   d7
        !          2029:        bne     @f
        !          2030:        PRINT   msg_ok(pc)
        !          2031: @@:
        !          2032:        rts
        !          2033: 
        !          2034: ; from,pred,sta,EA=x (hard)
        !          2035: test_34:
        !          2036:        moveq.l #-8,d0
        !          2037:        and.w   d5,d0
        !          2038:        PRINT   msg_test_34+8(pc,d0.w)
        !          2039:        bsr     init_from
        !          2040:        lea.l   workarea(pc),a0
        !          2041:        bsr     set_fline
        !          2042:        moveq.l #0,d7
1.1       root     2043:        lea.l   @f,a3
1.1.1.4 ! root     2044:        .dc.l   $f230e060
        !          2045:        .dc.w   $4000
1.1       root     2046: @@:
1.1.1.4 ! root     2047:        bsr     restore_fline
1.1       root     2048:        tst.l   d7
                   2049:        beq     @f
1.1.1.4 ! root     2050:        PRINT   msg_fail_trap(pc)
1.1       root     2051:        rts
                   2052: @@:
                   2053:        lea.l   workarea(pc),a1
                   2054:        cmp.l   a1,a0
                   2055:        beq     @f
                   2056:        pea.l   msg_fail_addr(pc)
                   2057:        move.l  a1,-(sp)
                   2058:        move.l  a0,-(sp)
                   2059:        bsr     result
                   2060:        lea.l   12(sp),sp
                   2061: @@:
                   2062:        ; compare first one
                   2063:        pea.l   msg_fail_1st(pc)
                   2064:        pea.l   (initdata+6*12)(pc)
1.1.1.4 ! root     2065:        pea.l   (0*12)(a1)
        !          2066:        bsr     check_ext
        !          2067:        lea.l   12(sp),sp
        !          2068:        ; compare second one
        !          2069:        pea.l   msg_fail_2nd(pc)
        !          2070:        pea.l   (initdata+5*12)(pc)
        !          2071:        pea.l   (1*12)(a1)
        !          2072:        bsr     check_ext
        !          2073:        lea.l   12(sp),sp
        !          2074: 
        !          2075:        tst.l   d7
        !          2076:        bne     @f
        !          2077:        PRINT   msg_ok(pc)
        !          2078: @@:
        !          2079:        rts
        !          2080: 
        !          2081: ; from,pred,dyn,EA=d (hard)
        !          2082: test_35:
        !          2083:        moveq.l #-8,d0
        !          2084:        and.w   d5,d0
        !          2085:        PRINT   msg_test_35+8(pc,d0.w)
        !          2086:        bsr     set_fline
        !          2087:        moveq.l #0,d7
        !          2088:        lea.l   @f,a3
        !          2089:        .dc.l   $f200e860
        !          2090: @@:
        !          2091:        bsr     restore_fline
        !          2092:        tst.l   d7
        !          2093:        bne     @f
        !          2094:        PRINT   msg_fail_notrap(pc)
        !          2095:        rts
        !          2096: @@:
        !          2097:        PRINT   msg_oktrap(pc)
        !          2098:        rts
        !          2099: 
        !          2100: ; from,pred,dyn,EA=a (hard)
        !          2101: test_36:
        !          2102:        moveq.l #-8,d0
        !          2103:        and.w   d5,d0
        !          2104:        PRINT   msg_test_36+8(pc,d0.w)
        !          2105:        bsr     set_fline
        !          2106:        moveq.l #0,d7
        !          2107:        lea.l   @f,a3
        !          2108:        .dc.l   $f208e860
        !          2109: @@:
        !          2110:        bsr     restore_fline
        !          2111:        tst.l   d7
        !          2112:        bne     @f
        !          2113:        PRINT   msg_fail_notrap(pc)
        !          2114:        rts
        !          2115: @@:
        !          2116:        PRINT   msg_oktrap(pc)
        !          2117:        rts
        !          2118: 
        !          2119: ; from,pred,dyn,EA=m (hard)
        !          2120: test_37:
        !          2121:        moveq.l #-8,d0
        !          2122:        and.w   d5,d0
        !          2123:        PRINT   msg_test_37+8(pc,d0.w)
        !          2124:        bsr     init_from
        !          2125:        lea.l   workarea(pc),a0
        !          2126:        bsr     set_fline
        !          2127:        moveq.l #0,d7
        !          2128:        lea.l   @f,a3
        !          2129:        .dc.l   $f210e860
        !          2130: @@:
        !          2131:        bsr     restore_fline
        !          2132:        tst.l   d7
        !          2133:        beq     @f
        !          2134:        PRINT   msg_fail_trap(pc)
        !          2135:        rts
        !          2136: @@:
        !          2137:        lea.l   workarea(pc),a1
        !          2138:        cmp.l   a1,a0
        !          2139:        beq     @f
        !          2140:        pea.l   msg_fail_addr(pc)
        !          2141:        move.l  a1,-(sp)
        !          2142:        move.l  a0,-(sp)
        !          2143:        bsr     result
        !          2144:        lea.l   12(sp),sp
        !          2145: @@:
        !          2146:        ; compare first one
        !          2147:        pea.l   msg_fail_1st(pc)
        !          2148:        pea.l   (initdata+5*12)(pc)
        !          2149:        pea.l   (0*12)(a1)
        !          2150:        bsr     check_ext
        !          2151:        lea.l   12(sp),sp
        !          2152:        ; compare second one
        !          2153:        pea.l   msg_fail_2nd(pc)
        !          2154:        pea.l   (initdata+4*12)(pc)
        !          2155:        pea.l   (1*12)(a1)
        !          2156:        bsr     check_ext
        !          2157:        lea.l   12(sp),sp
        !          2158: 
        !          2159:        tst.l   d7
        !          2160:        bne     @f
        !          2161:        PRINT   msg_ok(pc)
        !          2162: @@:
        !          2163:        rts
        !          2164: 
        !          2165: ; from,pred,dyn,EA=+ (hard)
        !          2166: test_38:
        !          2167:        moveq.l #-8,d0
        !          2168:        and.w   d5,d0
        !          2169:        PRINT   msg_test_38+8(pc,d0.w)
        !          2170:        bsr     set_fline
        !          2171:        moveq.l #0,d7
        !          2172:        lea.l   @f,a3
        !          2173:        .dc.l   $f218e860
        !          2174: @@:
        !          2175:        bsr     restore_fline
        !          2176:        tst.l   d7
        !          2177:        bne     @f
        !          2178:        PRINT   msg_fail_notrap(pc)
        !          2179:        rts
        !          2180: @@:
        !          2181:        PRINT   msg_oktrap(pc)
        !          2182:        rts
        !          2183: 
        !          2184: ; from,pred,dyn,EA=-
        !          2185: test_39:
        !          2186:        moveq.l #-8,d0
        !          2187:        and.w   d5,d0
        !          2188:        PRINT   msg_test_39+8(pc,d0.w)
        !          2189:        bsr     init_from
        !          2190:        lea.l   (workarea+24)(pc),a0
        !          2191:        bsr     set_fline
        !          2192:        moveq.l #0,d7
        !          2193:        lea.l   @f,a3
        !          2194:        .dc.l   $f220e860
        !          2195: @@:
        !          2196:        bsr     restore_fline
        !          2197:        tst.l   d7
        !          2198:        beq     @f
        !          2199:        PRINT   msg_fail_trap(pc)
        !          2200:        rts
        !          2201: @@:
        !          2202:        lea.l   workarea(pc),a1
        !          2203:        cmp.l   a1,a0
        !          2204:        beq     @f
        !          2205:        pea.l   msg_fail_addr(pc)
        !          2206:        move.l  a1,-(sp)
        !          2207:        move.l  a0,-(sp)
        !          2208:        bsr     result
        !          2209:        lea.l   12(sp),sp
        !          2210: @@:
        !          2211:        ; compare first one
        !          2212:        pea.l   msg_fail_1st(pc)
        !          2213:        pea.l   (initdata+5*12)(pc)
        !          2214:        pea.l   (1*12)(a1)
        !          2215:        bsr     check_ext
        !          2216:        lea.l   12(sp),sp
        !          2217:        ; compare second one
        !          2218:        pea.l   msg_fail_2nd(pc)
        !          2219:        pea.l   (initdata+4*12)(pc)
        !          2220:        pea.l   (0*12)(a1)
        !          2221:        bsr     check_ext
        !          2222:        lea.l   12(sp),sp
        !          2223: 
        !          2224:        tst.l   d7
        !          2225:        bne     @f
        !          2226:        PRINT   msg_ok(pc)
        !          2227: @@:
        !          2228:        rts
        !          2229: 
        !          2230: ; from,pred,dyn,EA=r (hard)
        !          2231: test_40:
        !          2232:        moveq.l #-8,d0
        !          2233:        and.w   d5,d0
        !          2234:        PRINT   msg_test_40+8(pc,d0.w)
        !          2235:        bsr     init_from
        !          2236:        lea.l   workarea(pc),a0
        !          2237:        bsr     set_fline
        !          2238:        moveq.l #0,d7
        !          2239:        lea.l   @f,a3
        !          2240:        .dc.l   $f228e860
        !          2241:        .dc.w   0
        !          2242: @@:
        !          2243:        bsr     restore_fline
        !          2244:        tst.l   d7
        !          2245:        beq     @f
        !          2246:        PRINT   msg_fail_trap(pc)
        !          2247:        rts
        !          2248: @@:
        !          2249:        lea.l   workarea(pc),a1
        !          2250:        cmp.l   a1,a0
        !          2251:        beq     @f
        !          2252:        pea.l   msg_fail_addr(pc)
        !          2253:        move.l  a1,-(sp)
        !          2254:        move.l  a0,-(sp)
        !          2255:        bsr     result
        !          2256:        lea.l   12(sp),sp
        !          2257: @@:
        !          2258:        ; compare first one
        !          2259:        pea.l   msg_fail_1st(pc)
        !          2260:        pea.l   (initdata+5*12)(pc)
        !          2261:        pea.l   (0*12)(a1)
1.1       root     2262:        bsr     check_ext
                   2263:        lea.l   12(sp),sp
                   2264:        ; compare second one
                   2265:        pea.l   msg_fail_2nd(pc)
1.1.1.4 ! root     2266:        pea.l   (initdata+4*12)(pc)
        !          2267:        pea.l   (1*12)(a1)
        !          2268:        bsr     check_ext
        !          2269:        lea.l   12(sp),sp
        !          2270: 
        !          2271:        tst.l   d7
        !          2272:        bne     @f
        !          2273:        PRINT   msg_ok(pc)
        !          2274: @@:
        !          2275:        rts
        !          2276: 
        !          2277: ; from,pred,dyn,EA=x (hard)
        !          2278: test_41:
        !          2279:        moveq.l #-8,d0
        !          2280:        and.w   d5,d0
        !          2281:        PRINT   msg_test_41+8(pc,d0.w)
        !          2282:        bsr     init_from
        !          2283:        lea.l   workarea(pc),a0
        !          2284:        bsr     set_fline
        !          2285:        moveq.l #0,d7
        !          2286:        lea.l   @f,a3
        !          2287:        .dc.l   $f230e860
        !          2288:        .dc.w   $4000
        !          2289: @@:
        !          2290:        bsr     restore_fline
        !          2291:        tst.l   d7
        !          2292:        beq     @f
        !          2293:        PRINT   msg_fail_trap(pc)
        !          2294:        rts
        !          2295: @@:
        !          2296:        lea.l   workarea(pc),a1
        !          2297:        cmp.l   a1,a0
        !          2298:        beq     @f
        !          2299:        pea.l   msg_fail_addr(pc)
        !          2300:        move.l  a1,-(sp)
        !          2301:        move.l  a0,-(sp)
        !          2302:        bsr     result
        !          2303:        lea.l   12(sp),sp
        !          2304: @@:
        !          2305:        ; compare first one
        !          2306:        pea.l   msg_fail_1st(pc)
1.1       root     2307:        pea.l   (initdata+5*12)(pc)
1.1.1.4 ! root     2308:        pea.l   (0*12)(a1)
        !          2309:        bsr     check_ext
        !          2310:        lea.l   12(sp),sp
        !          2311:        ; compare second one
        !          2312:        pea.l   msg_fail_2nd(pc)
        !          2313:        pea.l   (initdata+4*12)(pc)
        !          2314:        pea.l   (1*12)(a1)
        !          2315:        bsr     check_ext
        !          2316:        lea.l   12(sp),sp
        !          2317: 
        !          2318:        tst.l   d7
        !          2319:        bne     @f
        !          2320:        PRINT   msg_ok(pc)
        !          2321: @@:
        !          2322:        rts
        !          2323: 
        !          2324: ; from,ctrl,sta,EA=d (hard)
        !          2325: test_42:
        !          2326:        moveq.l #-8,d0
        !          2327:        and.w   d5,d0
        !          2328:        PRINT   msg_test_42+8(pc,d0.w)
        !          2329:        bsr     set_fline
        !          2330:        moveq.l #0,d7
        !          2331:        lea.l   @f,a3
        !          2332:        .dc.l   $f200f060
        !          2333: @@:
        !          2334:        bsr     restore_fline
        !          2335:        tst.l   d7
        !          2336:        bne     @f
        !          2337:        PRINT   msg_fail_notrap(pc)
        !          2338:        rts
        !          2339: @@:
        !          2340:        PRINT   msg_oktrap(pc)
        !          2341:        rts
        !          2342: 
        !          2343: ; from,ctrl,sta,EA=a (hard)
        !          2344: test_43:
        !          2345:        moveq.l #-8,d0
        !          2346:        and.w   d5,d0
        !          2347:        PRINT   msg_test_43+8(pc,d0.w)
        !          2348:        bsr     set_fline
        !          2349:        moveq.l #0,d7
        !          2350:        lea.l   @f,a3
        !          2351:        .dc.l   $f208f060
        !          2352: @@:
        !          2353:        bsr     restore_fline
        !          2354:        tst.l   d7
        !          2355:        bne     @f
        !          2356:        PRINT   msg_fail_notrap(pc)
        !          2357:        rts
        !          2358: @@:
        !          2359:        PRINT   msg_oktrap(pc)
        !          2360:        rts
        !          2361: 
        !          2362: ; from,ctrl,sta,EA=m
        !          2363: test_44:
        !          2364:        moveq.l #-8,d0
        !          2365:        and.w   d5,d0
        !          2366:        PRINT   msg_test_44+8(pc,d0.w)
        !          2367:        bsr     init_from
        !          2368:        lea.l   workarea(pc),a0
        !          2369:        bsr     set_fline
        !          2370:        moveq.l #0,d7
        !          2371:        lea.l   @f,a3
        !          2372:        .dc.l   $f210f060
        !          2373: @@:
        !          2374:        bsr     restore_fline
        !          2375:        tst.l   d7
        !          2376:        beq     @f
        !          2377:        PRINT   msg_fail_trap(pc)
        !          2378:        rts
        !          2379: @@:
        !          2380:        lea.l   workarea(pc),a1
        !          2381:        cmp.l   a1,a0
        !          2382:        beq     @f
        !          2383:        pea.l   msg_fail_addr(pc)
        !          2384:        move.l  a1,-(sp)
        !          2385:        move.l  a0,-(sp)
        !          2386:        bsr     result
        !          2387:        lea.l   12(sp),sp
        !          2388: @@:
        !          2389:        ; compare first one
        !          2390:        pea.l   msg_fail_1st(pc)
        !          2391:        pea.l   (initdata+1*12)(pc)
        !          2392:        pea.l   (0*12)(a1)
        !          2393:        bsr     check_ext
        !          2394:        lea.l   12(sp),sp
        !          2395:        ; compare second one
        !          2396:        pea.l   msg_fail_2nd(pc)
        !          2397:        pea.l   (initdata+2*12)(pc)
        !          2398:        pea.l   (1*12)(a1)
1.1       root     2399:        bsr     check_ext
                   2400:        lea.l   12(sp),sp
                   2401: 
                   2402:        tst.l   d7
                   2403:        bne     @f
1.1.1.4 ! root     2404:        PRINT   msg_ok(pc)
1.1       root     2405: @@:
                   2406:        rts
                   2407: 
1.1.1.4 ! root     2408: ; from,ctrl,sta,EA=+ (hard)
        !          2409: test_45:
        !          2410:        moveq.l #-8,d0
        !          2411:        and.w   d5,d0
        !          2412:        PRINT   msg_test_45+8(pc,d0.w)
        !          2413:        bsr     set_fline
1.1       root     2414:        moveq.l #0,d7
                   2415:        lea.l   @f,a3
1.1.1.4 ! root     2416:        .dc.l   $f218f060
1.1       root     2417: @@:
1.1.1.4 ! root     2418:        bsr     restore_fline
1.1       root     2419:        tst.l   d7
                   2420:        bne     @f
1.1.1.4 ! root     2421:        PRINT   msg_fail_notrap(pc)
        !          2422:        rts
        !          2423: @@:
        !          2424:        PRINT   msg_oktrap(pc)
1.1       root     2425:        rts
1.1.1.4 ! root     2426: 
        !          2427: ; from,ctrl,sta,EA=- (hard)
        !          2428: test_46:
        !          2429:        moveq.l #-8,d0
        !          2430:        and.w   d5,d0
        !          2431:        PRINT   msg_test_46+8(pc,d0.w)
        !          2432:        bsr     init_from
        !          2433:        lea.l   (workarea+24)(pc),a0
        !          2434:        bsr     set_fline
        !          2435:        moveq.l #0,d7
        !          2436:        lea.l   @f,a3
        !          2437:        .dc.l   $f220f060
1.1       root     2438: @@:
1.1.1.4 ! root     2439:        bsr     restore_fline
        !          2440:        tst.l   d7
        !          2441:        beq     @f
        !          2442:        PRINT   msg_fail_trap(pc)
1.1       root     2443:        rts
1.1.1.4 ! root     2444: @@:
        !          2445:        lea.l   workarea(pc),a1
        !          2446:        cmp.l   a1,a0
        !          2447:        beq     @f
        !          2448:        pea.l   msg_fail_addr(pc)
        !          2449:        move.l  a1,-(sp)
        !          2450:        move.l  a0,-(sp)
        !          2451:        bsr     result
        !          2452:        lea.l   12(sp),sp
        !          2453: @@:
        !          2454:        ; compare first one
        !          2455:        pea.l   msg_fail_1st(pc)
        !          2456:        pea.l   (initdata+1*12)(pc)
        !          2457:        pea.l   (1*12)(a1)
        !          2458:        bsr     check_ext
        !          2459:        lea.l   12(sp),sp
        !          2460:        ; compare second one
        !          2461:        pea.l   msg_fail_2nd(pc)
        !          2462:        pea.l   (initdata+2*12)(pc)
        !          2463:        pea.l   (0*12)(a1)
        !          2464:        bsr     check_ext
        !          2465:        lea.l   12(sp),sp
1.1       root     2466: 
                   2467:        tst.l   d7
                   2468:        bne     @f
1.1.1.4 ! root     2469:        PRINT   msg_ok(pc)
1.1       root     2470: @@:
                   2471:        rts
                   2472: 
1.1.1.4 ! root     2473: ; from,ctrl,sta,EA=r
        !          2474: test_47:
        !          2475:        moveq.l #-8,d0
        !          2476:        and.w   d5,d0
        !          2477:        PRINT   msg_test_47+8(pc,d0.w)
        !          2478:        bsr     init_from
1.1       root     2479:        lea.l   workarea(pc),a0
1.1.1.4 ! root     2480:        bsr     set_fline
        !          2481:        moveq.l #0,d7
1.1       root     2482:        lea.l   @f,a3
1.1.1.4 ! root     2483:        .dc.l   $f228f060
        !          2484:        .dc.w   0
1.1       root     2485: @@:
1.1.1.4 ! root     2486:        bsr     restore_fline
1.1       root     2487:        tst.l   d7
                   2488:        beq     @f
1.1.1.4 ! root     2489:        PRINT   msg_fail_trap(pc)
1.1       root     2490:        rts
                   2491: @@:
                   2492:        lea.l   workarea(pc),a1
                   2493:        cmp.l   a1,a0
                   2494:        beq     @f
                   2495:        pea.l   msg_fail_addr(pc)
                   2496:        move.l  a1,-(sp)
                   2497:        move.l  a0,-(sp)
                   2498:        bsr     result
                   2499:        lea.l   12(sp),sp
                   2500: @@:
                   2501:        ; compare first one
                   2502:        pea.l   msg_fail_1st(pc)
1.1.1.4 ! root     2503:        pea.l   (initdata+1*12)(pc)
        !          2504:        pea.l   (0*12)(a1)
1.1       root     2505:        bsr     check_ext
                   2506:        lea.l   12(sp),sp
                   2507:        ; compare second one
                   2508:        pea.l   msg_fail_2nd(pc)
1.1.1.4 ! root     2509:        pea.l   (initdata+2*12)(pc)
        !          2510:        pea.l   (1*12)(a1)
1.1       root     2511:        bsr     check_ext
                   2512:        lea.l   12(sp),sp
                   2513: 
                   2514:        tst.l   d7
                   2515:        bne     @f
1.1.1.4 ! root     2516:        PRINT   msg_ok(pc)
1.1       root     2517: @@:
                   2518:        rts
                   2519: 
1.1.1.4 ! root     2520: ; from,ctrl,sta,EA=x
        !          2521: test_48:
        !          2522:        moveq.l #-8,d0
        !          2523:        and.w   d5,d0
        !          2524:        PRINT   msg_test_48+8(pc,d0.w)
        !          2525:        bsr     init_from
1.1       root     2526:        lea.l   workarea(pc),a0
1.1.1.4 ! root     2527:        bsr     set_fline
        !          2528:        moveq.l #0,d7
1.1       root     2529:        lea.l   @f,a3
1.1.1.4 ! root     2530:        .dc.l   $f230f060
        !          2531:        .dc.w   $4000
1.1       root     2532: @@:
1.1.1.4 ! root     2533:        bsr     restore_fline
1.1       root     2534:        tst.l   d7
                   2535:        beq     @f
1.1.1.4 ! root     2536:        PRINT   msg_fail_trap(pc)
1.1       root     2537:        rts
                   2538: @@:
                   2539:        lea.l   workarea(pc),a1
                   2540:        cmp.l   a1,a0
                   2541:        beq     @f
                   2542:        pea.l   msg_fail_addr(pc)
                   2543:        move.l  a1,-(sp)
                   2544:        move.l  a0,-(sp)
                   2545:        bsr     result
                   2546:        lea.l   12(sp),sp
                   2547: @@:
                   2548:        ; compare first one
                   2549:        pea.l   msg_fail_1st(pc)
1.1.1.4 ! root     2550:        pea.l   (initdata+1*12)(pc)
        !          2551:        pea.l   (0*12)(a1)
1.1       root     2552:        bsr     check_ext
                   2553:        lea.l   12(sp),sp
                   2554:        ; compare second one
                   2555:        pea.l   msg_fail_2nd(pc)
1.1.1.4 ! root     2556:        pea.l   (initdata+2*12)(pc)
        !          2557:        pea.l   (1*12)(a1)
1.1       root     2558:        bsr     check_ext
                   2559:        lea.l   12(sp),sp
                   2560: 
                   2561:        tst.l   d7
                   2562:        bne     @f
1.1.1.4 ! root     2563:        PRINT   msg_ok(pc)
1.1       root     2564: @@:
                   2565:        rts
                   2566: 
1.1.1.4 ! root     2567: ; from,ctrl,dyn,EA=d (hard)
        !          2568: test_49:
        !          2569:        moveq.l #-8,d0
        !          2570:        and.w   d5,d0
        !          2571:        PRINT   msg_test_49+8(pc,d0.w)
        !          2572:        bsr     set_fline
1.1       root     2573:        moveq.l #0,d7
                   2574:        lea.l   @f,a3
1.1.1.4 ! root     2575:        .dc.l   $f200f860
1.1       root     2576: @@:
1.1.1.4 ! root     2577:        bsr     restore_fline
1.1       root     2578:        tst.l   d7
                   2579:        bne     @f
1.1.1.4 ! root     2580:        PRINT   msg_fail_notrap(pc)
1.1       root     2581:        rts
                   2582: @@:
1.1.1.4 ! root     2583:        PRINT   msg_oktrap(pc)
1.1       root     2584:        rts
                   2585: 
1.1.1.4 ! root     2586: ; from,ctrl,dyn,EA=a (hard)
        !          2587: test_50:
        !          2588:        moveq.l #-8,d0
        !          2589:        and.w   d5,d0
        !          2590:        PRINT   msg_test_50+8(pc,d0.w)
        !          2591:        bsr     set_fline
1.1       root     2592:        moveq.l #0,d7
                   2593:        lea.l   @f,a3
1.1.1.4 ! root     2594:        .dc.l   $f208f860
1.1       root     2595: @@:
1.1.1.4 ! root     2596:        bsr     restore_fline
1.1       root     2597:        tst.l   d7
                   2598:        bne     @f
1.1.1.4 ! root     2599:        PRINT   msg_fail_notrap(pc)
1.1       root     2600:        rts
                   2601: @@:
1.1.1.4 ! root     2602:        PRINT   msg_oktrap(pc)
1.1       root     2603:        rts
                   2604: 
1.1.1.4 ! root     2605: ; from,ctrl,dyn,EA=m
        !          2606: test_51:
        !          2607:        moveq.l #-8,d0
        !          2608:        and.w   d5,d0
        !          2609:        PRINT   msg_test_51+8(pc,d0.w)
        !          2610:        bsr     init_from
1.1       root     2611:        lea.l   workarea(pc),a0
1.1.1.4 ! root     2612:        bsr     set_fline
        !          2613:        moveq.l #0,d7
1.1       root     2614:        lea.l   @f,a3
1.1.1.4 ! root     2615:        .dc.l   $f210f860
1.1       root     2616: @@:
1.1.1.4 ! root     2617:        bsr     restore_fline
1.1       root     2618:        tst.l   d7
                   2619:        beq     @f
1.1.1.4 ! root     2620:        PRINT   msg_fail_trap(pc)
1.1       root     2621:        rts
                   2622: @@:
                   2623:        lea.l   workarea(pc),a1
                   2624:        cmp.l   a1,a0
                   2625:        beq     @f
                   2626:        pea.l   msg_fail_addr(pc)
                   2627:        move.l  a1,-(sp)
                   2628:        move.l  a0,-(sp)
                   2629:        bsr     result
                   2630:        lea.l   12(sp),sp
                   2631: @@:
                   2632:        ; compare first one
                   2633:        pea.l   msg_fail_1st(pc)
1.1.1.4 ! root     2634:        pea.l   (initdata+2*12)(pc)
        !          2635:        pea.l   (0*12)(a1)
1.1       root     2636:        bsr     check_ext
                   2637:        lea.l   12(sp),sp
                   2638:        ; compare second one
                   2639:        pea.l   msg_fail_2nd(pc)
1.1.1.4 ! root     2640:        pea.l   (initdata+3*12)(pc)
        !          2641:        pea.l   (1*12)(a1)
1.1       root     2642:        bsr     check_ext
                   2643:        lea.l   12(sp),sp
                   2644: 
                   2645:        tst.l   d7
                   2646:        bne     @f
1.1.1.4 ! root     2647:        PRINT   msg_ok(pc)
1.1       root     2648: @@:
                   2649:        rts
                   2650: 
1.1.1.4 ! root     2651: ; from,ctrl,dyn,EA=+ (hard)
        !          2652: test_52:
        !          2653:        moveq.l #-8,d0
        !          2654:        and.w   d5,d0
        !          2655:        PRINT   msg_test_52+8(pc,d0.w)
        !          2656:        bsr     set_fline
1.1       root     2657:        moveq.l #0,d7
                   2658:        lea.l   @f,a3
1.1.1.4 ! root     2659:        .dc.l   $f218f860
1.1       root     2660: @@:
1.1.1.4 ! root     2661:        bsr     restore_fline
1.1       root     2662:        tst.l   d7
                   2663:        bne     @f
1.1.1.4 ! root     2664:        PRINT   msg_fail_notrap(pc)
1.1       root     2665:        rts
                   2666: @@:
1.1.1.4 ! root     2667:        PRINT   msg_oktrap(pc)
1.1       root     2668:        rts
                   2669: 
1.1.1.4 ! root     2670: ; from,ctrl,dyn,EA=- (hard)
        !          2671: test_53:
        !          2672:        moveq.l #-8,d0
        !          2673:        and.w   d5,d0
        !          2674:        PRINT   msg_test_53+8(pc,d0.w)
        !          2675:        bsr     init_from
        !          2676:        lea.l   (workarea+24)(pc),a0
        !          2677:        bsr     set_fline
1.1       root     2678:        moveq.l #0,d7
                   2679:        lea.l   @f,a3
1.1.1.4 ! root     2680:        .dc.l   $f220f860
1.1       root     2681: @@:
1.1.1.4 ! root     2682:        bsr     restore_fline
1.1       root     2683:        tst.l   d7
                   2684:        beq     @f
1.1.1.4 ! root     2685:        PRINT   msg_fail_trap(pc)
1.1       root     2686:        rts
                   2687: @@:
                   2688:        lea.l   workarea(pc),a1
                   2689:        cmp.l   a1,a0
                   2690:        beq     @f
                   2691:        pea.l   msg_fail_addr(pc)
                   2692:        move.l  a1,-(sp)
                   2693:        move.l  a0,-(sp)
                   2694:        bsr     result
                   2695:        lea.l   12(sp),sp
                   2696: @@:
                   2697:        ; compare first one
                   2698:        pea.l   msg_fail_1st(pc)
1.1.1.4 ! root     2699:        pea.l   (initdata+2*12)(pc)
        !          2700:        pea.l   (1*12)(a1)
1.1       root     2701:        bsr     check_ext
                   2702:        lea.l   12(sp),sp
                   2703:        ; compare second one
                   2704:        pea.l   msg_fail_2nd(pc)
1.1.1.4 ! root     2705:        pea.l   (initdata+3*12)(pc)
        !          2706:        pea.l   (0*12)(a1)
1.1       root     2707:        bsr     check_ext
                   2708:        lea.l   12(sp),sp
                   2709: 
                   2710:        tst.l   d7
                   2711:        bne     @f
1.1.1.4 ! root     2712:        PRINT   msg_ok(pc)
1.1       root     2713: @@:
                   2714:        rts
                   2715: 
1.1.1.4 ! root     2716: ; from,ctrl,dyn,EA=r
        !          2717: test_54:
        !          2718:        moveq.l #-8,d0
        !          2719:        and.w   d5,d0
        !          2720:        PRINT   msg_test_54+8(pc,d0.w)
        !          2721:        bsr     init_from
1.1       root     2722:        lea.l   workarea(pc),a0
1.1.1.4 ! root     2723:        bsr     set_fline
        !          2724:        moveq.l #0,d7
1.1       root     2725:        lea.l   @f,a3
1.1.1.4 ! root     2726:        .dc.l   $f228f860
        !          2727:        .dc.w   0
1.1       root     2728: @@:
1.1.1.4 ! root     2729:        bsr     restore_fline
1.1       root     2730:        tst.l   d7
                   2731:        beq     @f
1.1.1.4 ! root     2732:        PRINT   msg_fail_trap(pc)
1.1       root     2733:        rts
                   2734: @@:
                   2735:        lea.l   workarea(pc),a1
                   2736:        cmp.l   a1,a0
                   2737:        beq     @f
                   2738:        pea.l   msg_fail_addr(pc)
                   2739:        move.l  a1,-(sp)
                   2740:        move.l  a0,-(sp)
                   2741:        bsr     result
                   2742:        lea.l   12(sp),sp
                   2743: @@:
                   2744:        ; compare first one
                   2745:        pea.l   msg_fail_1st(pc)
                   2746:        pea.l   (initdata+2*12)(pc)
1.1.1.4 ! root     2747:        pea.l   (0*12)(a1)
1.1       root     2748:        bsr     check_ext
                   2749:        lea.l   12(sp),sp
                   2750:        ; compare second one
                   2751:        pea.l   msg_fail_2nd(pc)
                   2752:        pea.l   (initdata+3*12)(pc)
1.1.1.4 ! root     2753:        pea.l   (1*12)(a1)
1.1       root     2754:        bsr     check_ext
                   2755:        lea.l   12(sp),sp
                   2756: 
                   2757:        tst.l   d7
                   2758:        bne     @f
1.1.1.4 ! root     2759:        PRINT   msg_ok(pc)
1.1       root     2760: @@:
                   2761:        rts
                   2762: 
1.1.1.4 ! root     2763: ; from,ctrl,dyn,EA=x
        !          2764: test_55:
        !          2765:        moveq.l #-8,d0
        !          2766:        and.w   d5,d0
        !          2767:        PRINT   msg_test_55+8(pc,d0.w)
        !          2768:        bsr     init_from
1.1       root     2769:        lea.l   workarea(pc),a0
1.1.1.4 ! root     2770:        bsr     set_fline
        !          2771:        moveq.l #0,d7
1.1       root     2772:        lea.l   @f,a3
1.1.1.4 ! root     2773:        .dc.l   $f230f860
        !          2774:        .dc.w   $4000
1.1       root     2775: @@:
1.1.1.4 ! root     2776:        bsr     restore_fline
1.1       root     2777:        tst.l   d7
                   2778:        beq     @f
1.1.1.4 ! root     2779:        PRINT   msg_fail_trap(pc)
1.1       root     2780:        rts
                   2781: @@:
                   2782:        lea.l   workarea(pc),a1
                   2783:        cmp.l   a1,a0
                   2784:        beq     @f
                   2785:        pea.l   msg_fail_addr(pc)
                   2786:        move.l  a1,-(sp)
                   2787:        move.l  a0,-(sp)
                   2788:        bsr     result
                   2789:        lea.l   12(sp),sp
                   2790: @@:
                   2791:        ; compare first one
                   2792:        pea.l   msg_fail_1st(pc)
                   2793:        pea.l   (initdata+2*12)(pc)
1.1.1.4 ! root     2794:        pea.l   (0*12)(a1)
1.1       root     2795:        bsr     check_ext
                   2796:        lea.l   12(sp),sp
                   2797:        ; compare second one
                   2798:        pea.l   msg_fail_2nd(pc)
                   2799:        pea.l   (initdata+3*12)(pc)
1.1.1.4 ! root     2800:        pea.l   (1*12)(a1)
1.1       root     2801:        bsr     check_ext
                   2802:        lea.l   12(sp),sp
                   2803: 
                   2804:        tst.l   d7
                   2805:        bne     @f
1.1.1.4 ! root     2806:        PRINT   msg_ok(pc)
1.1       root     2807: @@:
                   2808:        rts
                   2809: 
1.1.1.4 ! root     2810: 
        !          2811: ; 空リストは正しく0個転送という扱いになる。
        !          2812: ; たぶん dynamic でも同様だろうけどもうテストしない。
        !          2813: test_nofpn:
        !          2814:        PRINT   msg_test_nofpn(pc)
        !          2815:        bsr     init_from
        !          2816:        ; 実行
        !          2817:        lea.l   srcdata(pc),a0
        !          2818:        bsr     set_fline
1.1       root     2819:        moveq.l #0,d7
                   2820:        lea.l   @f,a3
1.1.1.4 ! root     2821:        .dc.l   $f218d000       ; fmovem.x (a0)+,nofpn
1.1       root     2822: @@:
1.1.1.4 ! root     2823:        bsr     restore_fline
        !          2824:        ; 例外は起きないはずなので D7 がゼロなら成功(次へ)
1.1       root     2825:        tst.l   d7
                   2826:        beq     @f
1.1.1.4 ! root     2827:        PRINT   msg_fail_trap(pc)
1.1       root     2828:        rts
                   2829: @@:
1.1.1.4 ! root     2830:        ; An を照合する。(An)+ だけど変わらないはず。
        !          2831:        lea.l   srcdata(pc),a1
        !          2832:        cmp.l   a1,a0
        !          2833:        beq     @f
        !          2834:        pea.l   msg_fail_addr(pc)
        !          2835:        move.l  a1,-(sp)
        !          2836:        move.l  a0,-(sp)
        !          2837:        bsr     result
        !          2838:        lea.l   12(sp),sp
        !          2839: @@:
        !          2840:        lea.l   workarea(pc),a2
        !          2841:        ; compare FP0
        !          2842:        pea.l   msg_fail_fp0(pc)
        !          2843:        pea.l   (initdata+0*12)(pc)
        !          2844:        fmove.x fp0,(a2)
        !          2845:        pea.l   (a2)
        !          2846:        bsr     check_ext
        !          2847:        lea.l   12(sp),sp
        !          2848:        ; compare FP1
        !          2849:        pea.l   msg_fail_fp1(pc)
        !          2850:        pea.l   (initdata+1*12)(pc)
        !          2851:        fmove.x fp1,(a2)
        !          2852:        pea.l   (a2)
        !          2853:        bsr     check_ext
        !          2854:        lea.l   12(sp),sp
        !          2855:        ; compare FP2
        !          2856:        pea.l   msg_fail_fp2(pc)
        !          2857:        pea.l   (initdata+2*12)(pc)
        !          2858:        fmove.x fp2,(a2)
        !          2859:        pea.l   (a2)
        !          2860:        bsr     check_ext
        !          2861:        lea.l   12(sp),sp
        !          2862:        ; compare FP3
        !          2863:        pea.l   msg_fail_fp3(pc)
        !          2864:        pea.l   (initdata+3*12)(pc)
        !          2865:        fmove.x fp3,(a2)
        !          2866:        pea.l   (a2)
        !          2867:        bsr     check_ext
        !          2868:        lea.l   12(sp),sp
        !          2869:        ; compare FP4
        !          2870:        pea.l   msg_fail_fp4(pc)
        !          2871:        pea.l   (initdata+4*12)(pc)
        !          2872:        fmove.x fp4,(a2)
        !          2873:        pea.l   (a2)
        !          2874:        bsr     check_ext
        !          2875:        lea.l   12(sp),sp
        !          2876:        ; compare FP5
        !          2877:        pea.l   msg_fail_fp5(pc)
        !          2878:        pea.l   (initdata+5*12)(pc)
        !          2879:        fmove.x fp5,(a2)
        !          2880:        pea.l   (a2)
        !          2881:        bsr     check_ext
        !          2882:        lea.l   12(sp),sp
        !          2883:        ; compare FP6
        !          2884:        pea.l   msg_fail_fp6(pc)
        !          2885:        pea.l   (initdata+6*12)(pc)
        !          2886:        fmove.x fp6,(a2)
        !          2887:        pea.l   (a2)
        !          2888:        bsr     check_ext
        !          2889:        lea.l   12(sp),sp
        !          2890:        ; compare FP7
        !          2891:        pea.l   msg_fail_fp7(pc)
        !          2892:        pea.l   (initdata+7*12)(pc)
        !          2893:        fmove.x fp7,(a2)
        !          2894:        pea.l   (a2)
1.1       root     2895:        bsr     check_ext
                   2896:        lea.l   12(sp),sp
                   2897: 
                   2898:        tst.l   d7
                   2899:        bne     @f
1.1.1.4 ! root     2900:        PRINT   msg_ok(pc)
1.1       root     2901: @@:
                   2902:        rts
                   2903: 
1.1.1.4 ! root     2904: ; dynamic レジスタ指定の 0rrr_0000 の %0 のところに何か書かれてても無視。
        !          2905: test_illdyn:
        !          2906:        PRINT   msg_test_illdyn(pc)
        !          2907:        bsr     init_from
        !          2908:        ; 実行
1.1       root     2909:        lea.l   srcdata(pc),a0
                   2910:        moveq.l #$80,d6
                   2911:        moveq.l #0,d7
                   2912:        lea.l   @f,a3
1.1.1.4 ! root     2913:        .dc.l   $f210d86f       ; fmovem.x (a0),d6
1.1       root     2914: @@:
1.1.1.4 ! root     2915:        bsr     restore_fline
        !          2916:        ; 例外は起きないはずなので D7 がゼロなら成功(次へ)
1.1       root     2917:        tst.l   d7
                   2918:        beq     @f
1.1.1.4 ! root     2919:        PRINT   msg_fail_trap(pc)
1.1       root     2920:        rts
                   2921: @@:
1.1.1.4 ! root     2922:        ; An を照合する。
        !          2923:        lea.l   srcdata(pc),a1
        !          2924:        cmp.l   a1,a0
        !          2925:        beq     @f
        !          2926:        pea.l   msg_fail_addr(pc)
        !          2927:        move.l  a1,-(sp)
        !          2928:        move.l  a0,-(sp)
        !          2929:        bsr     result
        !          2930:        lea.l   12(sp),sp
        !          2931: @@:
        !          2932:        lea.l   workarea(pc),a2
        !          2933:        ; compare FP0
1.1       root     2934:        pea.l   msg_fail_fp0(pc)
                   2935:        pea.l   srcdata(pc)
1.1.1.4 ! root     2936:        fmove.x fp0,(a2)
        !          2937:        pea.l   (a2)
        !          2938:        bsr     check_ext
        !          2939:        lea.l   12(sp),sp
        !          2940:        ; compare FP1
        !          2941:        pea.l   msg_fail_fp1(pc)
        !          2942:        pea.l   (initdata+1*12)(pc)
        !          2943:        fmove.x fp1,(a2)
        !          2944:        pea.l   (a2)
        !          2945:        bsr     check_ext
        !          2946:        lea.l   12(sp),sp
        !          2947:        ; compare FP2
        !          2948:        pea.l   msg_fail_fp2(pc)
        !          2949:        pea.l   (initdata+2*12)(pc)
        !          2950:        fmove.x fp2,(a2)
        !          2951:        pea.l   (a2)
        !          2952:        bsr     check_ext
        !          2953:        lea.l   12(sp),sp
        !          2954:        ; compare FP3
        !          2955:        pea.l   msg_fail_fp3(pc)
        !          2956:        pea.l   (initdata+3*12)(pc)
        !          2957:        fmove.x fp3,(a2)
        !          2958:        pea.l   (a2)
        !          2959:        bsr     check_ext
        !          2960:        lea.l   12(sp),sp
        !          2961:        ; compare FP4
        !          2962:        pea.l   msg_fail_fp4(pc)
        !          2963:        pea.l   (initdata+4*12)(pc)
        !          2964:        fmove.x fp4,(a2)
        !          2965:        pea.l   (a2)
        !          2966:        bsr     check_ext
        !          2967:        lea.l   12(sp),sp
        !          2968:        ; compare FP5
        !          2969:        pea.l   msg_fail_fp5(pc)
        !          2970:        pea.l   (initdata+5*12)(pc)
        !          2971:        fmove.x fp5,(a2)
        !          2972:        pea.l   (a2)
        !          2973:        bsr     check_ext
        !          2974:        lea.l   12(sp),sp
        !          2975:        ; compare FP6
        !          2976:        pea.l   msg_fail_fp6(pc)
        !          2977:        pea.l   (initdata+6*12)(pc)
        !          2978:        fmove.x fp6,(a2)
        !          2979:        pea.l   (a2)
        !          2980:        bsr     check_ext
        !          2981:        lea.l   12(sp),sp
        !          2982:        ; compare FP7
        !          2983:        pea.l   msg_fail_fp7(pc)
        !          2984:        pea.l   (initdata+7*12)(pc)
        !          2985:        fmove.x fp7,(a2)
        !          2986:        pea.l   (a2)
1.1       root     2987:        bsr     check_ext
                   2988:        lea.l   12(sp),sp
                   2989: 
                   2990:        tst.l   d7
                   2991:        bne     @f
1.1.1.4 ! root     2992:        PRINT   msg_ok(pc)
1.1       root     2993: @@:
                   2994:        rts
                   2995: 
1.1.1.4 ! root     2996: ; test_from 用の初期化。
        !          2997: ; FP0..7 を初期値で埋めるのと、書き込み先バッファを用意。
        !          2998: ; a0/a1 は破壊する。
        !          2999: init_from:
        !          3000:        lea.l   initdata(pc),a0
        !          3001:        fmove.x (a0)+,fp0
        !          3002:        fmove.x (a0)+,fp1
        !          3003:        fmove.x (a0)+,fp2
        !          3004:        fmove.x (a0)+,fp3
        !          3005:        fmove.x (a0)+,fp4
        !          3006:        fmove.x (a0)+,fp5
        !          3007:        fmove.x (a0)+,fp6
        !          3008:        fmove.x (a0)+,fp7
1.1.1.3   root     3009: 
1.1.1.4 ! root     3010:        ; 書き込み先を分かりやすいデータで初期化。
        !          3011:        lea.l   initdata_from(pc),a0
        !          3012:        lea.l   workarea(pc),a1
        !          3013:        move.l  (a0)+,(a1)+
        !          3014:        move.l  (a0)+,(a1)+
        !          3015:        move.l  (a0),(a1)+
        !          3016:        subq.l  #8,a0
        !          3017:        move.l  (a0)+,(a1)+
        !          3018:        move.l  (a0)+,(a1)+
        !          3019:        move.l  (a0),(a1)+
        !          3020:        rts
1.1       root     3021: 
                   3022: ; 結果表示
                   3023: ; スタックには、メッセージ、期待値、実際の値の順で積む。
                   3024: result:
                   3025:        link    a6,#0
                   3026:        movem.l d0/a0,-(sp)
                   3027: 
                   3028:        move.l  8+8(a6),-(sp)
                   3029:        DOS     _PRINT
                   3030:        addq.l  #4,sp
                   3031: 
                   3032:        move.l  8+4(a6),d0
                   3033:        lea.l   buf(pc),a0
                   3034:        bsr     hexstr_long
1.1.1.4 ! root     3035:        PRINT   buf(pc)
        !          3036:        PRINT   msg_but(pc)
1.1       root     3037: 
                   3038:        move.l  8+0(a6),d0
                   3039:        lea.l   buf(pc),a0
                   3040:        bsr     hexstr_long
1.1.1.4 ! root     3041:        PRINT   buf(pc)
        !          3042:        PRINT   msg_crlf(pc)
1.1       root     3043: 
                   3044:        addq.l  #1,d7   ; errcnt
                   3045:        movem.l (sp)+,d0/a0
                   3046:        unlk    a6
                   3047:        rts
                   3048: 
                   3049: ; 拡張精度の比較と結果表示。
                   3050: ; 一致したら何もせず帰る。一致しなければエラーメッセージを表示。
                   3051: ; スタックには、(エラー時の)メッセージ、期待値、実際の値の順で積む
                   3052: check_ext:
                   3053:        link    a6,#0
                   3054:        movem.l d0/a0-a2,-(sp)
                   3055: 
                   3056:        move.l  8+4(a6),a1
                   3057:        move.l  8+0(a6),a2
                   3058:        cmpm.l  (a1)+,(a2)+
                   3059:        bne     @f
                   3060:        cmpm.l  (a1)+,(a2)+
                   3061:        bne     @f
                   3062:        cmpm.l  (a1)+,(a2)+
                   3063:        bne     @f
                   3064:        ; equal
                   3065:        bra     check_ext_done
                   3066: 
                   3067: @@:    ; not equal
1.1.1.4 ! root     3068:        ; テスト名を表示した行に続けてこれを表示すると折り返してしまうので、
        !          3069:        ; これが1件目のエラーなら先に一つ改行する。
        !          3070:        tst.l   d7
        !          3071:        bne     @f
        !          3072:        PRINT   msg_crlf(pc)
        !          3073: @@:
1.1       root     3074:        move.l  8+8(a6),-(sp)
                   3075:        DOS     _PRINT
                   3076:        addq.l  #4,sp
                   3077: 
                   3078:        lea.l   buf(pc),a0
                   3079:        move.l  8+4(a6),a1
                   3080:        move.l  (a1)+,d0
                   3081:        bsr     hexstr_long
                   3082:        move.b  #'_',(a0)+
                   3083:        move.l  (a1)+,d0
                   3084:        bsr     hexstr_long
                   3085:        move.b  #'_',(a0)+
                   3086:        move.l  (a1),d0
                   3087:        bsr     hexstr_long
1.1.1.4 ! root     3088:        PRINT   buf(pc)
        !          3089:        PRINT   msg_but(pc)
1.1       root     3090: 
                   3091:        lea.l   buf(pc),a0
                   3092:        move.l  8+0(a6),a2
                   3093:        move.l  (a2)+,d0
                   3094:        bsr     hexstr_long
                   3095:        move.b  #'_',(a0)+
                   3096:        move.l  (a2)+,d0
                   3097:        bsr     hexstr_long
                   3098:        move.b  #'_',(a0)+
                   3099:        move.l  (a2),d0
                   3100:        bsr     hexstr_long
1.1.1.4 ! root     3101:        PRINT   buf(pc)
        !          3102:        PRINT   msg_crlf(pc)
1.1       root     3103: 
                   3104:        addq.l  #1,d7   ; errcnt
                   3105: check_ext_done:
                   3106:        movem.l (sp)+,d0/a0-a2
                   3107:        unlk    a6
                   3108:        rts
                   3109: 
1.1.1.4 ! root     3110: ; Fライン例外をテスト用のものに差し替える。
        !          3111: ; 変更前のアドレスを a4 に格納する。
        !          3112: ; a1 は破壊する。
        !          3113: set_fline:
        !          3114:        movem.l d0-d1,-(sp)
        !          3115:        moveq.l #$b,d1
        !          3116:        lea.l   fline_handler(pc),a1
        !          3117:        IOCS    _B_INTVCS
        !          3118:        movea.l d0,a4
        !          3119:        movem.l (sp)+,d0-d1
        !          3120:        rts
        !          3121: 
        !          3122: ; Fライン例外を元に戻す。
        !          3123: ; a1 は破壊する。
        !          3124: restore_fline:
        !          3125:        movem.l d0-d1,-(sp)
        !          3126:        moveq.l #$b,d1
        !          3127:        movea.l a4,a1
        !          3128:        IOCS    _B_INTVCS
        !          3129:        movem.l (sp)+,d0-d1
        !          3130:        rts
        !          3131: 
1.1       root     3132: ; Fライン例外ハンドラ
                   3133: ; a3 に戻りアドレスをセットしてあること
                   3134: ; d7 を 1 にして帰る
                   3135: fline_handler:
                   3136:        moveq.l #1,d7
                   3137:        move.l  a3,2(sp)
                   3138:        rte
                   3139: 
                   3140: ; FPn を埋める初期値
                   3141: initdata:
1.1.1.4 ! root     3142:        .dc.l   $00010000, $80888888, $88888888
        !          3143:        .dc.l   $00010000, $80111111, $11111111
        !          3144:        .dc.l   $00010000, $80222222, $22222222
        !          3145:        .dc.l   $00010000, $80333333, $33333333
        !          3146:        .dc.l   $00010000, $80444444, $44444444
        !          3147:        .dc.l   $00010000, $80555555, $55555555
        !          3148:        .dc.l   $00010000, $80666666, $66666666
        !          3149:        .dc.l   $00010000, $80777777, $77777777
1.1       root     3150: 
                   3151: ; ターゲットの FPn に転送するデータ
                   3152: srcdata:
1.1.1.4 ! root     3153:        .dc.l   $3fff0000, $80aaaaaa, $aaaaaaaa
        !          3154:        .dc.l   $3fff0000, $80bbbbbb, $bbbbbbbb
1.1       root     3155: 
1.1.1.4 ! root     3156: ; 書き込み先の初期化用データ
        !          3157: initdata_from:
        !          3158:        .dc.l   $90919293, $94959697, $98999a9b
1.1       root     3159: 
1.1.1.3   root     3160: msg_hard:      .dc.b   "hard mode",$d,$a,0
                   3161: msg_easy:      .dc.b   "easy mode",$d,$a,0
1.1       root     3162: msg_oktrap:    .dc.b   $9,"ok(trap)",$d,$a,0, 0,0
                   3163: msg_fail_notrap:       .dc.b   $9,"FAIL: trap expected but not occured",$d,$a,0
                   3164: msg_fail_trap: .dc.b   $9,"FAIL: unexpected trap occured",$d,$a,0
1.1.1.4 ! root     3165: msg_skip_dst:  .dc.b   $9,"SKIP(dstmem)",0
1.1       root     3166: 
                   3167: msg_ok:                .dc.b   $9,"ok",$d,$a,0
                   3168: msg_fail_fp0:  .dc.b   $9,"FAIL: fp0 expects ",0
                   3169: msg_fail_fp1:  .dc.b   $9,"FAIL: fp1 expects ",0
                   3170: msg_fail_fp2:  .dc.b   $9,"FAIL: fp2 expects ",0
                   3171: msg_fail_fp3:  .dc.b   $9,"FAIL: fp3 expects ",0
                   3172: msg_fail_fp4:  .dc.b   $9,"FAIL: fp4 expects ",0
                   3173: msg_fail_fp5:  .dc.b   $9,"FAIL: fp5 expects ",0
                   3174: msg_fail_fp6:  .dc.b   $9,"FAIL: fp6 expects ",0
                   3175: msg_fail_fp7:  .dc.b   $9,"FAIL: fp7 expects ",0
                   3176: msg_fail_1st:  .dc.b   $9,"FAIL: 1st expects ",0
                   3177: msg_fail_2nd:  .dc.b   $9,"FAIL: 2nd expects ",0
                   3178: msg_fail_addr: .dc.b   $9,"FAIL: an expects ",0
                   3179: msg_but:       .dc.b   " but ",0
                   3180: msg_crlf:      .dc.b   $d,$a,0
                   3181: 
1.1.1.4 ! root     3182: msg_test_0:    .dc.b   "00:pred;fmovem.x d0,fp5-fp6",0
        !          3183: msg_test_1:    .dc.b   "01:pred;fmovem.x a0,fp5-fp6",0
        !          3184: msg_test_2:    .dc.b   "02:pred;fmovem.x (a0),fp5-fp6",0
        !          3185: msg_test_3:    .dc.b   "03:pred;fmovem.x (a0)+,fp5-fp6",0
        !          3186: msg_test_4:    .dc.b   "04:pred;fmovem.x -(a0),fp5-fp6",0
        !          3187: msg_test_5:    .dc.b   "05:pred;fmovem.x d16(a0),fp5-fp6",0
        !          3188: msg_test_6:    .dc.b   "06:pred;fmovem.x d8(a0,ix),fp5-fp6",0
        !          3189: msg_test_7:    .dc.b   "07:pred;fmovem.x d0,d6<fp4-fp5>",0
        !          3190: msg_test_8:    .dc.b   "08:pred;fmovem.x a0,d6<fp4-fp5>",0
        !          3191: msg_test_9:    .dc.b   "09:pred;fmovem.x (a0),d6<fp4-fp5>",0
        !          3192: msg_test_10:   .dc.b   "10:pred;fmovem.x (a0)+,d6<fp4-fp5>",0
        !          3193: msg_test_11:   .dc.b   "11:pred;fmovem.x -(a0),d6<fp4-fp5>",0
        !          3194: msg_test_12:   .dc.b   "12:pred;fmovem.x d16(a0),d6<fp4-fp5>",0
        !          3195: msg_test_13:   .dc.b   "13:pred;fmovem.x d8(a0,ix),d6<fp4-fp5>",0
        !          3196: msg_test_14:   .dc.b   "14:ctrl;fmovem.x d0,fp1-fp2",0
        !          3197: msg_test_15:   .dc.b   "15:ctrl;fmovem.x a0,fp1-fp2",0
        !          3198: msg_test_16:   .dc.b   "16:ctrl;fmovem.x (a0),fp1-fp2",0
        !          3199: msg_test_17:   .dc.b   "17:ctrl;fmovem.x (a0)+,fp1-fp2",0
        !          3200: msg_test_18:   .dc.b   "18:ctrl;fmovem.x -(a0),fp1-fp2",0
        !          3201: msg_test_19:   .dc.b   "19:ctrl;fmovem.x d16(a0),fp1-fp2",0
        !          3202: msg_test_20:   .dc.b   "20:ctrl;fmovem.x d8(a0,ix),fp1-fp2",0
        !          3203: msg_test_21:   .dc.b   "21:ctrl;fmovem.x d0,d6<fp2-fp3>",0
        !          3204: msg_test_22:   .dc.b   "22:ctrl;fmovem.x a0,d6<fp2-fp3>",0
        !          3205: msg_test_23:   .dc.b   "23:ctrl;fmovem.x (a0),d6<fp2-fp3>",0
        !          3206: msg_test_24:   .dc.b   "24:ctrl;fmovem.x (a0)+,d6<fp2-fp3>",0
        !          3207: msg_test_25:   .dc.b   "25:ctrl;fmovem.x -(a0),d6<fp2-fp3>",0
        !          3208: msg_test_26:   .dc.b   "26:ctrl;fmovem.x d16(a0),d6<fp2-fp3>",0
        !          3209: msg_test_27:   .dc.b   "27:ctrl;fmovem.x d8(a0,ix),d6<fp2-fp3>",0
        !          3210: msg_test_28:   .dc.b   "28:pred;fmovem.x fp5-fp6,d0",0
        !          3211: msg_test_29:   .dc.b   "29:pred;fmovem.x fp5-fp6,a0",0
        !          3212: msg_test_30:   .dc.b   "30:pred;fmovem.x fp5-fp6,(a0)",0
        !          3213: msg_test_31:   .dc.b   "31:pred;fmovem.x fp5-fp6,(a0)+",0
        !          3214: msg_test_32:   .dc.b   "32:pred;fmovem.x fp5-fp6,-(a0)",0
        !          3215: msg_test_33:   .dc.b   "33:pred;fmovem.x fp5-fp6,d16(a0)",0
        !          3216: msg_test_34:   .dc.b   "34:pred;fmovem.x fp5-fp6,d8(a0,ix)",0
        !          3217: msg_test_35:   .dc.b   "35:pred;fmovem.x d6<fp4-fp5>,d0",0
        !          3218: msg_test_36:   .dc.b   "36:pred;fmovem.x d6<fp4-fp5>,a0",0
        !          3219: msg_test_37:   .dc.b   "37:pred;fmovem.x d6<fp4-fp5>,(a0)",0
        !          3220: msg_test_38:   .dc.b   "38:pred;fmovem.x d6<fp4-fp5>,(a0)+",0
        !          3221: msg_test_39:   .dc.b   "39:pred;fmovem.x d6<fp4-fp5>,-(a0)",0
        !          3222: msg_test_40:   .dc.b   "40:pred;fmovem.x d6<fp4-fp5>,d16(a0)",0
        !          3223: msg_test_41:   .dc.b   "41:pred;fmovem.x d6<fp4-fp5>,d8(a0,ix)",0
        !          3224: msg_test_42:   .dc.b   "42:ctrl;fmovem.x fp1-fp2,d0",0
        !          3225: msg_test_43:   .dc.b   "43:ctrl;fmovem.x fp1-fp2,a0",0
        !          3226: msg_test_44:   .dc.b   "44:ctrl;fmovem.x fp1-fp2,(a0)",0
        !          3227: msg_test_45:   .dc.b   "45:ctrl;fmovem.x fp1-fp2,(a0)+",0
        !          3228: msg_test_46:   .dc.b   "46:ctrl;fmovem.x fp1-fp2,-(a0)",0
        !          3229: msg_test_47:   .dc.b   "47:ctrl;fmovem.x fp1-fp2,d16(a0)",0
        !          3230: msg_test_48:   .dc.b   "48:ctrl;fmovem.x fp1-fp2,d8(a0,ix)",0
        !          3231: msg_test_49:   .dc.b   "49:ctrl;fmovem.x d6<fp2-fp3>,d0",0
        !          3232: msg_test_50:   .dc.b   "50:ctrl;fmovem.x d6<fp2-fp3>,a0",0
        !          3233: msg_test_51:   .dc.b   "51:ctrl;fmovem.x d6<fp2-fp3>,(a0)",0
        !          3234: msg_test_52:   .dc.b   "52:ctrl;fmovem.x d6<fp2-fp3>,(a0)+",0
        !          3235: msg_test_53:   .dc.b   "53:ctrl;fmovem.x d6<fp2-fp3>,-(a0)",0
        !          3236: msg_test_54:   .dc.b   "54:ctrl;fmovem.x d6<fp2-fp3>,d16(a0)",0
        !          3237: msg_test_55:   .dc.b   "55:ctrl;fmovem.x d6<fp2-fp3>,d8(a0,ix)",0
        !          3238: msg_test_nofpn:        .dc.b   "fmovem.x (a0)+,nofpn",0
        !          3239: msg_test_illdyn:.dc.b  "fmovem.x (a0),d6<FP0>_bit",0
1.1       root     3240: 
                   3241:        .data
                   3242:        .even
                   3243: workarea:      .ds.b   24
1.1.1.3   root     3244: buf:           .ds.b   64
1.1       root     3245: 
                   3246:        .end    start

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.