Annotation of nono/exp/fmovemc.has, revision 1.1.1.2

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:
                     27: ;  > has fmovem.has
                     28: ;  > hlk fmovem.o si_util.o
                     29: 
                     30:        .xref   hexstr_long
                     31:        .include doscall.mac
                     32:        .list
                     33:        .cpu    68030
                     34: 
                     35: PRINT  .macro  msg
                     36:        pea.l   msg(pc)
                     37:        DOS     _PRINT
                     38:        addq.l  #4,sp
                     39:        .endm
                     40: 
                     41: SET_FLINE_TRAP .macro
                     42:        move.l  (a5),a4
                     43:        lea.l   fline_handler(pc),a1
                     44:        move.l  a1,(a5)
                     45:        .endm
                     46: 
                     47: RESTORE_FLINE_TRAP     .macro
                     48:        move.l  a4,(a5)
                     49:        .endm
                     50: 
                     51:        .text
                     52:        .even
                     53: test_fmovem_dn_to____:
                     54:        PRINT   msg_fmovem_dn_to____
                     55:        fmove.l #0,fpcr
                     56:        fmove.l #0,fpsr
                     57:        fmove.l #0,fpiar
                     58:        move.l  #$55555555,d0
                     59:        SET_FLINE_TRAP
                     60:        moveq.l #0,d7
                     61:        lea.l   @f,a3
                     62:        .dc.w   $f200, $8000
                     63: @@:
                     64:        RESTORE_FLINE_TRAP
                     65:        tst.l   d7
                     66:        beq     @f
                     67:        PRINT   msg_fail_trap
                     68:        rts
                     69: @@:
                     70:        fmove.l fpcr,d0
                     71:        moveq.l #0,d1
                     72:        cmp.l   d1,d0
                     73:        beq     @f
                     74:        pea.l   msg_fail_cr(pc)
                     75:        move.l  d1,-(sp)
                     76:        move.l  d0,-(sp)
                     77:        bsr     result
                     78:        lea.l   12(sp),sp
                     79: @@:
                     80:        fmove.l fpsr,d0
                     81:        moveq.l #0,d1
                     82:        cmp.l   d1,d0
                     83:        beq     @f
                     84:        pea.l   msg_fail_sr(pc)
                     85:        move.l  d1,-(sp)
                     86:        move.l  d0,-(sp)
                     87:        bsr     result
                     88:        lea.l   12(sp),sp
                     89: @@:
                     90:        fmove.l fpiar,a0
                     91:        move.l  #$55555555,a1
                     92:        cmpa.l  a1,a0
                     93:        beq     @f
                     94:        pea.l   msg_fail_ir(pc)
                     95:        move.l  a1,-(sp)
                     96:        move.l  a0,-(sp)
                     97:        bsr     result
                     98:        lea.l   12(sp),sp
                     99: @@:
                    100:        tst.l   d7
                    101:        bne     @f
                    102:        PRINT   msg_ok
                    103: @@:
                    104:        rts
                    105: 
                    106: test_fmovem_an_to____:
                    107:        PRINT   msg_fmovem_an_to____
                    108:        fmove.l #0,fpcr
                    109:        fmove.l #0,fpsr
                    110:        fmove.l #0,fpiar
                    111:        move.l  #$55555555,a0
                    112:        SET_FLINE_TRAP
                    113:        moveq.l #0,d7
                    114:        lea.l   @f,a3
                    115:        .dc.w   $f208, $8000
                    116: @@:
                    117:        RESTORE_FLINE_TRAP
                    118:        tst.l   d7
                    119:        beq     @f
                    120:        PRINT   msg_fail_trap
                    121:        rts
                    122: @@:
                    123:        fmove.l fpcr,d0
                    124:        moveq.l #0,d1
                    125:        cmp.l   d1,d0
                    126:        beq     @f
                    127:        pea.l   msg_fail_cr(pc)
                    128:        move.l  d1,-(sp)
                    129:        move.l  d0,-(sp)
                    130:        bsr     result
                    131:        lea.l   12(sp),sp
                    132: @@:
                    133:        fmove.l fpsr,d0
                    134:        moveq.l #0,d1
                    135:        cmp.l   d1,d0
                    136:        beq     @f
                    137:        pea.l   msg_fail_sr(pc)
                    138:        move.l  d1,-(sp)
                    139:        move.l  d0,-(sp)
                    140:        bsr     result
                    141:        lea.l   12(sp),sp
                    142: @@:
                    143:        fmove.l fpiar,a0
                    144:        move.l  #$55555555,a1
                    145:        cmpa.l  a1,a0
                    146:        beq     @f
                    147:        pea.l   msg_fail_ir(pc)
                    148:        move.l  a1,-(sp)
                    149:        move.l  a0,-(sp)
                    150:        bsr     result
                    151:        lea.l   12(sp),sp
                    152: @@:
                    153:        tst.l   d7
                    154:        bne     @f
                    155:        PRINT   msg_ok
                    156: @@:
                    157:        rts
                    158: 
                    159: test_fmovem_anin_to____:
                    160:        PRINT   msg_fmovem_anin_to____
                    161:        fmove.l #0,fpcr
                    162:        fmove.l #0,fpsr
                    163:        fmove.l #0,fpiar
                    164:        move.l  #$55555555,workarea
                    165:        lea.l   workarea(pc),a0
                    166:        SET_FLINE_TRAP
                    167:        moveq.l #0,d7
                    168:        lea.l   @f,a3
                    169:        .dc.w   $f210, $8000
                    170: @@:
                    171:        RESTORE_FLINE_TRAP
                    172:        tst.l   d7
                    173:        beq     @f
                    174:        PRINT   msg_fail_trap
                    175:        rts
                    176: @@:
                    177:        lea.l   workarea(pc),a1
                    178:        cmpa.l  a1,a0
                    179:        beq     @f
                    180:        pea.l   msg_fail_addr(pc)
                    181:        move.l  a1,-(sp)
                    182:        move.l  a0,-(sp)
                    183:        bsr     result
                    184:        lea.l   12(sp),sp
                    185: @@:
                    186:        fmove.l fpcr,d0
                    187:        moveq.l #0,d1
                    188:        cmp.l   d1,d0
                    189:        beq     @f
                    190:        pea.l   msg_fail_cr(pc)
                    191:        move.l  d1,-(sp)
                    192:        move.l  d0,-(sp)
                    193:        bsr     result
                    194:        lea.l   12(sp),sp
                    195: @@:
                    196:        fmove.l fpsr,d0
                    197:        moveq.l #0,d1
                    198:        cmp.l   d1,d0
                    199:        beq     @f
                    200:        pea.l   msg_fail_sr(pc)
                    201:        move.l  d1,-(sp)
                    202:        move.l  d0,-(sp)
                    203:        bsr     result
                    204:        lea.l   12(sp),sp
                    205: @@:
                    206:        fmove.l fpiar,a0
                    207:        move.l  #$55555555,a1
                    208:        cmpa.l  a1,a0
                    209:        beq     @f
                    210:        pea.l   msg_fail_ir(pc)
                    211:        move.l  a1,-(sp)
                    212:        move.l  a0,-(sp)
                    213:        bsr     result
                    214:        lea.l   12(sp),sp
                    215: @@:
                    216:        tst.l   d7
                    217:        bne     @f
                    218:        PRINT   msg_ok
                    219: @@:
                    220:        rts
                    221: 
                    222: test_fmovem_anpi_to____:
                    223:        PRINT   msg_fmovem_anpi_to____
                    224:        fmove.l #0,fpcr
                    225:        fmove.l #0,fpsr
                    226:        fmove.l #0,fpiar
                    227:        move.l  #$55555555,workarea
                    228:        lea.l   workarea(pc),a0
                    229:        SET_FLINE_TRAP
                    230:        moveq.l #0,d7
                    231:        lea.l   @f,a3
                    232:        .dc.w   $f218, $8000
                    233: @@:
                    234:        RESTORE_FLINE_TRAP
                    235:        tst.l   d7
                    236:        beq     @f
                    237:        PRINT   msg_fail_trap
                    238:        rts
                    239: @@:
                    240:        lea.l workarea+4(pc),a1
                    241:        cmpa.l  a1,a0
                    242:        beq     @f
                    243:        pea.l   msg_fail_addr(pc)
                    244:        move.l  a1,-(sp)
                    245:        move.l  a0,-(sp)
                    246:        bsr     result
                    247:        lea.l   12(sp),sp
                    248: @@:
                    249:        fmove.l fpcr,d0
                    250:        moveq.l #0,d1
                    251:        cmp.l   d1,d0
                    252:        beq     @f
                    253:        pea.l   msg_fail_cr(pc)
                    254:        move.l  d1,-(sp)
                    255:        move.l  d0,-(sp)
                    256:        bsr     result
                    257:        lea.l   12(sp),sp
                    258: @@:
                    259:        fmove.l fpsr,d0
                    260:        moveq.l #0,d1
                    261:        cmp.l   d1,d0
                    262:        beq     @f
                    263:        pea.l   msg_fail_sr(pc)
                    264:        move.l  d1,-(sp)
                    265:        move.l  d0,-(sp)
                    266:        bsr     result
                    267:        lea.l   12(sp),sp
                    268: @@:
                    269:        fmove.l fpiar,a0
                    270:        move.l  #$55555555,a1
                    271:        cmpa.l  a1,a0
                    272:        beq     @f
                    273:        pea.l   msg_fail_ir(pc)
                    274:        move.l  a1,-(sp)
                    275:        move.l  a0,-(sp)
                    276:        bsr     result
                    277:        lea.l   12(sp),sp
                    278: @@:
                    279:        tst.l   d7
                    280:        bne     @f
                    281:        PRINT   msg_ok
                    282: @@:
                    283:        rts
                    284: 
                    285: test_fmovem_anpd_to____:
                    286:        PRINT   msg_fmovem_anpd_to____
                    287:        fmove.l #0,fpcr
                    288:        fmove.l #0,fpsr
                    289:        fmove.l #0,fpiar
                    290:        move.l  #$55555555,workarea
                    291:        lea.l   workarea+4(pc),a0
                    292:        SET_FLINE_TRAP
                    293:        moveq.l #0,d7
                    294:        lea.l   @f,a3
                    295:        .dc.w   $f220, $8000
                    296: @@:
                    297:        RESTORE_FLINE_TRAP
                    298:        tst.l   d7
                    299:        beq     @f
                    300:        PRINT   msg_fail_trap
                    301:        rts
                    302: @@:
                    303:        lea.l   workarea(pc),a1
                    304:        cmpa.l  a1,a0
                    305:        beq     @f
                    306:        pea.l   msg_fail_addr(pc)
                    307:        move.l  a1,-(sp)
                    308:        move.l  a0,-(sp)
                    309:        bsr     result
                    310:        lea.l   12(sp),sp
                    311: @@:
                    312:        fmove.l fpcr,d0
                    313:        moveq.l #0,d1
                    314:        cmp.l   d1,d0
                    315:        beq     @f
                    316:        pea.l   msg_fail_cr(pc)
                    317:        move.l  d1,-(sp)
                    318:        move.l  d0,-(sp)
                    319:        bsr     result
                    320:        lea.l   12(sp),sp
                    321: @@:
                    322:        fmove.l fpsr,d0
                    323:        moveq.l #0,d1
                    324:        cmp.l   d1,d0
                    325:        beq     @f
                    326:        pea.l   msg_fail_sr(pc)
                    327:        move.l  d1,-(sp)
                    328:        move.l  d0,-(sp)
                    329:        bsr     result
                    330:        lea.l   12(sp),sp
                    331: @@:
                    332:        fmove.l fpiar,a0
                    333:        move.l  #$55555555,a1
                    334:        cmpa.l  a1,a0
                    335:        beq     @f
                    336:        pea.l   msg_fail_ir(pc)
                    337:        move.l  a1,-(sp)
                    338:        move.l  a0,-(sp)
                    339:        bsr     result
                    340:        lea.l   12(sp),sp
                    341: @@:
                    342:        tst.l   d7
                    343:        bne     @f
                    344:        PRINT   msg_ok
                    345: @@:
                    346:        rts
                    347: 
                    348: test_fmovem_imm_to____:
                    349:        PRINT   msg_fmovem_imm_to____
                    350:        fmove.l #0,fpcr
                    351:        fmove.l #0,fpsr
                    352:        fmove.l #0,fpiar
                    353:        SET_FLINE_TRAP
                    354:        moveq.l #0,d7
                    355:        lea.l   @f,a3
                    356:        .dc.w   $f23c, $8000
                    357:        .dc.l $55555555
                    358: @@:
                    359:        RESTORE_FLINE_TRAP
                    360:        tst.l   d7
                    361:        beq     @f
                    362:        PRINT   msg_fail_trap
                    363:        rts
                    364: @@:
                    365:        fmove.l fpcr,d0
                    366:        moveq.l #0,d1
                    367:        cmp.l   d1,d0
                    368:        beq     @f
                    369:        pea.l   msg_fail_cr(pc)
                    370:        move.l  d1,-(sp)
                    371:        move.l  d0,-(sp)
                    372:        bsr     result
                    373:        lea.l   12(sp),sp
                    374: @@:
                    375:        fmove.l fpsr,d0
                    376:        moveq.l #0,d1
                    377:        cmp.l   d1,d0
                    378:        beq     @f
                    379:        pea.l   msg_fail_sr(pc)
                    380:        move.l  d1,-(sp)
                    381:        move.l  d0,-(sp)
                    382:        bsr     result
                    383:        lea.l   12(sp),sp
                    384: @@:
                    385:        fmove.l fpiar,a0
                    386:        move.l  #$55555555,a1
                    387:        cmpa.l  a1,a0
                    388:        beq     @f
                    389:        pea.l   msg_fail_ir(pc)
                    390:        move.l  a1,-(sp)
                    391:        move.l  a0,-(sp)
                    392:        bsr     result
                    393:        lea.l   12(sp),sp
                    394: @@:
                    395:        tst.l   d7
                    396:        bne     @f
                    397:        PRINT   msg_ok
                    398: @@:
                    399:        rts
                    400: 
                    401: test_fmovem_dn_to___I:
                    402:        PRINT   msg_fmovem_dn_to___I
                    403:        fmove.l #0,fpcr
                    404:        fmove.l #0,fpsr
                    405:        fmove.l #0,fpiar
                    406:        move.l  #$55555555,d0
                    407:        SET_FLINE_TRAP
                    408:        moveq.l #0,d7
                    409:        lea.l   @f,a3
                    410:        fmovem.l d0,fpiar
                    411: @@:
                    412:        RESTORE_FLINE_TRAP
                    413:        tst.l   d7
                    414:        beq     @f
                    415:        PRINT   msg_fail_trap
                    416:        rts
                    417: @@:
                    418:        fmove.l fpcr,d0
                    419:        moveq.l #0,d1
                    420:        cmp.l   d1,d0
                    421:        beq     @f
                    422:        pea.l   msg_fail_cr(pc)
                    423:        move.l  d1,-(sp)
                    424:        move.l  d0,-(sp)
                    425:        bsr     result
                    426:        lea.l   12(sp),sp
                    427: @@:
                    428:        fmove.l fpsr,d0
                    429:        moveq.l #0,d1
                    430:        cmp.l   d1,d0
                    431:        beq     @f
                    432:        pea.l   msg_fail_sr(pc)
                    433:        move.l  d1,-(sp)
                    434:        move.l  d0,-(sp)
                    435:        bsr     result
                    436:        lea.l   12(sp),sp
                    437: @@:
                    438:        fmove.l fpiar,a0
                    439:        move.l  #$55555555,a1
                    440:        cmpa.l  a1,a0
                    441:        beq     @f
                    442:        pea.l   msg_fail_ir(pc)
                    443:        move.l  a1,-(sp)
                    444:        move.l  a0,-(sp)
                    445:        bsr     result
                    446:        lea.l   12(sp),sp
                    447: @@:
                    448:        tst.l   d7
                    449:        bne     @f
                    450:        PRINT   msg_ok
                    451: @@:
                    452:        rts
                    453: 
                    454: test_fmovem_an_to___I:
                    455:        PRINT   msg_fmovem_an_to___I
                    456:        fmove.l #0,fpcr
                    457:        fmove.l #0,fpsr
                    458:        fmove.l #0,fpiar
                    459:        move.l  #$55555555,a0
                    460:        SET_FLINE_TRAP
                    461:        moveq.l #0,d7
                    462:        lea.l   @f,a3
                    463:        fmovem.l a0,fpiar
                    464: @@:
                    465:        RESTORE_FLINE_TRAP
                    466:        tst.l   d7
                    467:        beq     @f
                    468:        PRINT   msg_fail_trap
                    469:        rts
                    470: @@:
                    471:        fmove.l fpcr,d0
                    472:        moveq.l #0,d1
                    473:        cmp.l   d1,d0
                    474:        beq     @f
                    475:        pea.l   msg_fail_cr(pc)
                    476:        move.l  d1,-(sp)
                    477:        move.l  d0,-(sp)
                    478:        bsr     result
                    479:        lea.l   12(sp),sp
                    480: @@:
                    481:        fmove.l fpsr,d0
                    482:        moveq.l #0,d1
                    483:        cmp.l   d1,d0
                    484:        beq     @f
                    485:        pea.l   msg_fail_sr(pc)
                    486:        move.l  d1,-(sp)
                    487:        move.l  d0,-(sp)
                    488:        bsr     result
                    489:        lea.l   12(sp),sp
                    490: @@:
                    491:        fmove.l fpiar,a0
                    492:        move.l  #$55555555,a1
                    493:        cmpa.l  a1,a0
                    494:        beq     @f
                    495:        pea.l   msg_fail_ir(pc)
                    496:        move.l  a1,-(sp)
                    497:        move.l  a0,-(sp)
                    498:        bsr     result
                    499:        lea.l   12(sp),sp
                    500: @@:
                    501:        tst.l   d7
                    502:        bne     @f
                    503:        PRINT   msg_ok
                    504: @@:
                    505:        rts
                    506: 
                    507: test_fmovem_anin_to___I:
                    508:        PRINT   msg_fmovem_anin_to___I
                    509:        fmove.l #0,fpcr
                    510:        fmove.l #0,fpsr
                    511:        fmove.l #0,fpiar
                    512:        move.l  #$55555555,workarea
                    513:        lea.l   workarea(pc),a0
                    514:        SET_FLINE_TRAP
                    515:        moveq.l #0,d7
                    516:        lea.l   @f,a3
                    517:        fmovem.l (a0),fpiar
                    518: @@:
                    519:        RESTORE_FLINE_TRAP
                    520:        tst.l   d7
                    521:        beq     @f
                    522:        PRINT   msg_fail_trap
                    523:        rts
                    524: @@:
                    525:        lea.l   workarea(pc),a1
                    526:        cmpa.l  a1,a0
                    527:        beq     @f
                    528:        pea.l   msg_fail_addr(pc)
                    529:        move.l  a1,-(sp)
                    530:        move.l  a0,-(sp)
                    531:        bsr     result
                    532:        lea.l   12(sp),sp
                    533: @@:
                    534:        fmove.l fpcr,d0
                    535:        moveq.l #0,d1
                    536:        cmp.l   d1,d0
                    537:        beq     @f
                    538:        pea.l   msg_fail_cr(pc)
                    539:        move.l  d1,-(sp)
                    540:        move.l  d0,-(sp)
                    541:        bsr     result
                    542:        lea.l   12(sp),sp
                    543: @@:
                    544:        fmove.l fpsr,d0
                    545:        moveq.l #0,d1
                    546:        cmp.l   d1,d0
                    547:        beq     @f
                    548:        pea.l   msg_fail_sr(pc)
                    549:        move.l  d1,-(sp)
                    550:        move.l  d0,-(sp)
                    551:        bsr     result
                    552:        lea.l   12(sp),sp
                    553: @@:
                    554:        fmove.l fpiar,a0
                    555:        move.l  #$55555555,a1
                    556:        cmpa.l  a1,a0
                    557:        beq     @f
                    558:        pea.l   msg_fail_ir(pc)
                    559:        move.l  a1,-(sp)
                    560:        move.l  a0,-(sp)
                    561:        bsr     result
                    562:        lea.l   12(sp),sp
                    563: @@:
                    564:        tst.l   d7
                    565:        bne     @f
                    566:        PRINT   msg_ok
                    567: @@:
                    568:        rts
                    569: 
                    570: test_fmovem_anpi_to___I:
                    571:        PRINT   msg_fmovem_anpi_to___I
                    572:        fmove.l #0,fpcr
                    573:        fmove.l #0,fpsr
                    574:        fmove.l #0,fpiar
                    575:        move.l  #$55555555,workarea
                    576:        lea.l   workarea(pc),a0
                    577:        SET_FLINE_TRAP
                    578:        moveq.l #0,d7
                    579:        lea.l   @f,a3
                    580:        fmovem.l (a0)+,fpiar
                    581: @@:
                    582:        RESTORE_FLINE_TRAP
                    583:        tst.l   d7
                    584:        beq     @f
                    585:        PRINT   msg_fail_trap
                    586:        rts
                    587: @@:
                    588:        lea.l workarea+4(pc),a1
                    589:        cmpa.l  a1,a0
                    590:        beq     @f
                    591:        pea.l   msg_fail_addr(pc)
                    592:        move.l  a1,-(sp)
                    593:        move.l  a0,-(sp)
                    594:        bsr     result
                    595:        lea.l   12(sp),sp
                    596: @@:
                    597:        fmove.l fpcr,d0
                    598:        moveq.l #0,d1
                    599:        cmp.l   d1,d0
                    600:        beq     @f
                    601:        pea.l   msg_fail_cr(pc)
                    602:        move.l  d1,-(sp)
                    603:        move.l  d0,-(sp)
                    604:        bsr     result
                    605:        lea.l   12(sp),sp
                    606: @@:
                    607:        fmove.l fpsr,d0
                    608:        moveq.l #0,d1
                    609:        cmp.l   d1,d0
                    610:        beq     @f
                    611:        pea.l   msg_fail_sr(pc)
                    612:        move.l  d1,-(sp)
                    613:        move.l  d0,-(sp)
                    614:        bsr     result
                    615:        lea.l   12(sp),sp
                    616: @@:
                    617:        fmove.l fpiar,a0
                    618:        move.l  #$55555555,a1
                    619:        cmpa.l  a1,a0
                    620:        beq     @f
                    621:        pea.l   msg_fail_ir(pc)
                    622:        move.l  a1,-(sp)
                    623:        move.l  a0,-(sp)
                    624:        bsr     result
                    625:        lea.l   12(sp),sp
                    626: @@:
                    627:        tst.l   d7
                    628:        bne     @f
                    629:        PRINT   msg_ok
                    630: @@:
                    631:        rts
                    632: 
                    633: test_fmovem_anpd_to___I:
                    634:        PRINT   msg_fmovem_anpd_to___I
                    635:        fmove.l #0,fpcr
                    636:        fmove.l #0,fpsr
                    637:        fmove.l #0,fpiar
                    638:        move.l  #$55555555,workarea
                    639:        lea.l   workarea+4(pc),a0
                    640:        SET_FLINE_TRAP
                    641:        moveq.l #0,d7
                    642:        lea.l   @f,a3
                    643:        fmovem.l -(a0),fpiar
                    644: @@:
                    645:        RESTORE_FLINE_TRAP
                    646:        tst.l   d7
                    647:        beq     @f
                    648:        PRINT   msg_fail_trap
                    649:        rts
                    650: @@:
                    651:        lea.l   workarea(pc),a1
                    652:        cmpa.l  a1,a0
                    653:        beq     @f
                    654:        pea.l   msg_fail_addr(pc)
                    655:        move.l  a1,-(sp)
                    656:        move.l  a0,-(sp)
                    657:        bsr     result
                    658:        lea.l   12(sp),sp
                    659: @@:
                    660:        fmove.l fpcr,d0
                    661:        moveq.l #0,d1
                    662:        cmp.l   d1,d0
                    663:        beq     @f
                    664:        pea.l   msg_fail_cr(pc)
                    665:        move.l  d1,-(sp)
                    666:        move.l  d0,-(sp)
                    667:        bsr     result
                    668:        lea.l   12(sp),sp
                    669: @@:
                    670:        fmove.l fpsr,d0
                    671:        moveq.l #0,d1
                    672:        cmp.l   d1,d0
                    673:        beq     @f
                    674:        pea.l   msg_fail_sr(pc)
                    675:        move.l  d1,-(sp)
                    676:        move.l  d0,-(sp)
                    677:        bsr     result
                    678:        lea.l   12(sp),sp
                    679: @@:
                    680:        fmove.l fpiar,a0
                    681:        move.l  #$55555555,a1
                    682:        cmpa.l  a1,a0
                    683:        beq     @f
                    684:        pea.l   msg_fail_ir(pc)
                    685:        move.l  a1,-(sp)
                    686:        move.l  a0,-(sp)
                    687:        bsr     result
                    688:        lea.l   12(sp),sp
                    689: @@:
                    690:        tst.l   d7
                    691:        bne     @f
                    692:        PRINT   msg_ok
                    693: @@:
                    694:        rts
                    695: 
                    696: test_fmovem_imm_to___I:
                    697:        PRINT   msg_fmovem_imm_to___I
                    698:        fmove.l #0,fpcr
                    699:        fmove.l #0,fpsr
                    700:        fmove.l #0,fpiar
                    701:        SET_FLINE_TRAP
                    702:        moveq.l #0,d7
                    703:        lea.l   @f,a3
                    704:        fmovem.l #$55555555,fpiar
                    705: @@:
                    706:        RESTORE_FLINE_TRAP
                    707:        tst.l   d7
                    708:        beq     @f
                    709:        PRINT   msg_fail_trap
                    710:        rts
                    711: @@:
                    712:        fmove.l fpcr,d0
                    713:        moveq.l #0,d1
                    714:        cmp.l   d1,d0
                    715:        beq     @f
                    716:        pea.l   msg_fail_cr(pc)
                    717:        move.l  d1,-(sp)
                    718:        move.l  d0,-(sp)
                    719:        bsr     result
                    720:        lea.l   12(sp),sp
                    721: @@:
                    722:        fmove.l fpsr,d0
                    723:        moveq.l #0,d1
                    724:        cmp.l   d1,d0
                    725:        beq     @f
                    726:        pea.l   msg_fail_sr(pc)
                    727:        move.l  d1,-(sp)
                    728:        move.l  d0,-(sp)
                    729:        bsr     result
                    730:        lea.l   12(sp),sp
                    731: @@:
                    732:        fmove.l fpiar,a0
                    733:        move.l  #$55555555,a1
                    734:        cmpa.l  a1,a0
                    735:        beq     @f
                    736:        pea.l   msg_fail_ir(pc)
                    737:        move.l  a1,-(sp)
                    738:        move.l  a0,-(sp)
                    739:        bsr     result
                    740:        lea.l   12(sp),sp
                    741: @@:
                    742:        tst.l   d7
                    743:        bne     @f
                    744:        PRINT   msg_ok
                    745: @@:
                    746:        rts
                    747: 
                    748: test_fmovem_dn_to__S_:
                    749:        PRINT   msg_fmovem_dn_to__S_
                    750:        fmove.l #0,fpcr
                    751:        fmove.l #0,fpsr
                    752:        fmove.l #0,fpiar
                    753:        move.l  #$55555555,d0
                    754:        SET_FLINE_TRAP
                    755:        moveq.l #0,d7
                    756:        lea.l   @f,a3
                    757:        fmovem.l d0,fpsr
                    758: @@:
                    759:        RESTORE_FLINE_TRAP
                    760:        tst.l   d7
                    761:        beq     @f
                    762:        PRINT   msg_fail_trap
                    763:        rts
                    764: @@:
                    765:        fmove.l fpcr,d0
                    766:        moveq.l #0,d1
                    767:        cmp.l   d1,d0
                    768:        beq     @f
                    769:        pea.l   msg_fail_cr(pc)
                    770:        move.l  d1,-(sp)
                    771:        move.l  d0,-(sp)
                    772:        bsr     result
                    773:        lea.l   12(sp),sp
                    774: @@:
                    775:        fmove.l fpsr,d0
                    776:        move.l  #$05555550,d1
                    777:        cmp.l   d1,d0
                    778:        beq     @f
                    779:        pea.l   msg_fail_sr(pc)
                    780:        move.l  d1,-(sp)
                    781:        move.l  d0,-(sp)
                    782:        bsr     result
                    783:        lea.l   12(sp),sp
                    784: @@:
                    785:        fmove.l fpiar,a0
                    786:        move.l  d7,a1   ; d7=0
                    787:        cmpa.l  a1,a0
                    788:        beq     @f
                    789:        pea.l   msg_fail_ir(pc)
                    790:        move.l  a1,-(sp)
                    791:        move.l  a0,-(sp)
                    792:        bsr     result
                    793:        lea.l   12(sp),sp
                    794: @@:
                    795:        tst.l   d7
                    796:        bne     @f
                    797:        PRINT   msg_ok
                    798: @@:
                    799:        rts
                    800: 
                    801: test_fmovem_an_to__S_:
                    802:        PRINT   msg_fmovem_an_to__S_
                    803:        SET_FLINE_TRAP
                    804:        moveq.l #0,d7
                    805:        lea.l   @f,a3
                    806:        .dc.w   $f208, $8800
                    807: @@:
                    808:        RESTORE_FLINE_TRAP
                    809:        tst.l   d7
                    810:        bne     @f
                    811:        PRINT   msg_fail_notrap
                    812:        rts
                    813: @@:
                    814:        PRINT   msg_oktrap
                    815:        rts
                    816: 
                    817: test_fmovem_anin_to__S_:
                    818:        PRINT   msg_fmovem_anin_to__S_
                    819:        fmove.l #0,fpcr
                    820:        fmove.l #0,fpsr
                    821:        fmove.l #0,fpiar
                    822:        move.l  #$55555555,workarea
                    823:        lea.l   workarea(pc),a0
                    824:        SET_FLINE_TRAP
                    825:        moveq.l #0,d7
                    826:        lea.l   @f,a3
                    827:        fmovem.l (a0),fpsr
                    828: @@:
                    829:        RESTORE_FLINE_TRAP
                    830:        tst.l   d7
                    831:        beq     @f
                    832:        PRINT   msg_fail_trap
                    833:        rts
                    834: @@:
                    835:        lea.l   workarea(pc),a1
                    836:        cmpa.l  a1,a0
                    837:        beq     @f
                    838:        pea.l   msg_fail_addr(pc)
                    839:        move.l  a1,-(sp)
                    840:        move.l  a0,-(sp)
                    841:        bsr     result
                    842:        lea.l   12(sp),sp
                    843: @@:
                    844:        fmove.l fpcr,d0
                    845:        moveq.l #0,d1
                    846:        cmp.l   d1,d0
                    847:        beq     @f
                    848:        pea.l   msg_fail_cr(pc)
                    849:        move.l  d1,-(sp)
                    850:        move.l  d0,-(sp)
                    851:        bsr     result
                    852:        lea.l   12(sp),sp
                    853: @@:
                    854:        fmove.l fpsr,d0
                    855:        move.l  #$05555550,d1
                    856:        cmp.l   d1,d0
                    857:        beq     @f
                    858:        pea.l   msg_fail_sr(pc)
                    859:        move.l  d1,-(sp)
                    860:        move.l  d0,-(sp)
                    861:        bsr     result
                    862:        lea.l   12(sp),sp
                    863: @@:
                    864:        fmove.l fpiar,a0
                    865:        move.l  d7,a1   ; d7=0
                    866:        cmpa.l  a1,a0
                    867:        beq     @f
                    868:        pea.l   msg_fail_ir(pc)
                    869:        move.l  a1,-(sp)
                    870:        move.l  a0,-(sp)
                    871:        bsr     result
                    872:        lea.l   12(sp),sp
                    873: @@:
                    874:        tst.l   d7
                    875:        bne     @f
                    876:        PRINT   msg_ok
                    877: @@:
                    878:        rts
                    879: 
                    880: test_fmovem_anpi_to__S_:
                    881:        PRINT   msg_fmovem_anpi_to__S_
                    882:        fmove.l #0,fpcr
                    883:        fmove.l #0,fpsr
                    884:        fmove.l #0,fpiar
                    885:        move.l  #$55555555,workarea
                    886:        lea.l   workarea(pc),a0
                    887:        SET_FLINE_TRAP
                    888:        moveq.l #0,d7
                    889:        lea.l   @f,a3
                    890:        fmovem.l (a0)+,fpsr
                    891: @@:
                    892:        RESTORE_FLINE_TRAP
                    893:        tst.l   d7
                    894:        beq     @f
                    895:        PRINT   msg_fail_trap
                    896:        rts
                    897: @@:
                    898:        lea.l workarea+4(pc),a1
                    899:        cmpa.l  a1,a0
                    900:        beq     @f
                    901:        pea.l   msg_fail_addr(pc)
                    902:        move.l  a1,-(sp)
                    903:        move.l  a0,-(sp)
                    904:        bsr     result
                    905:        lea.l   12(sp),sp
                    906: @@:
                    907:        fmove.l fpcr,d0
                    908:        moveq.l #0,d1
                    909:        cmp.l   d1,d0
                    910:        beq     @f
                    911:        pea.l   msg_fail_cr(pc)
                    912:        move.l  d1,-(sp)
                    913:        move.l  d0,-(sp)
                    914:        bsr     result
                    915:        lea.l   12(sp),sp
                    916: @@:
                    917:        fmove.l fpsr,d0
                    918:        move.l  #$05555550,d1
                    919:        cmp.l   d1,d0
                    920:        beq     @f
                    921:        pea.l   msg_fail_sr(pc)
                    922:        move.l  d1,-(sp)
                    923:        move.l  d0,-(sp)
                    924:        bsr     result
                    925:        lea.l   12(sp),sp
                    926: @@:
                    927:        fmove.l fpiar,a0
                    928:        move.l  d7,a1   ; d7=0
                    929:        cmpa.l  a1,a0
                    930:        beq     @f
                    931:        pea.l   msg_fail_ir(pc)
                    932:        move.l  a1,-(sp)
                    933:        move.l  a0,-(sp)
                    934:        bsr     result
                    935:        lea.l   12(sp),sp
                    936: @@:
                    937:        tst.l   d7
                    938:        bne     @f
                    939:        PRINT   msg_ok
                    940: @@:
                    941:        rts
                    942: 
                    943: test_fmovem_anpd_to__S_:
                    944:        PRINT   msg_fmovem_anpd_to__S_
                    945:        fmove.l #0,fpcr
                    946:        fmove.l #0,fpsr
                    947:        fmove.l #0,fpiar
                    948:        move.l  #$55555555,workarea
                    949:        lea.l   workarea+4(pc),a0
                    950:        SET_FLINE_TRAP
                    951:        moveq.l #0,d7
                    952:        lea.l   @f,a3
                    953:        fmovem.l -(a0),fpsr
                    954: @@:
                    955:        RESTORE_FLINE_TRAP
                    956:        tst.l   d7
                    957:        beq     @f
                    958:        PRINT   msg_fail_trap
                    959:        rts
                    960: @@:
                    961:        lea.l   workarea(pc),a1
                    962:        cmpa.l  a1,a0
                    963:        beq     @f
                    964:        pea.l   msg_fail_addr(pc)
                    965:        move.l  a1,-(sp)
                    966:        move.l  a0,-(sp)
                    967:        bsr     result
                    968:        lea.l   12(sp),sp
                    969: @@:
                    970:        fmove.l fpcr,d0
                    971:        moveq.l #0,d1
                    972:        cmp.l   d1,d0
                    973:        beq     @f
                    974:        pea.l   msg_fail_cr(pc)
                    975:        move.l  d1,-(sp)
                    976:        move.l  d0,-(sp)
                    977:        bsr     result
                    978:        lea.l   12(sp),sp
                    979: @@:
                    980:        fmove.l fpsr,d0
                    981:        move.l  #$05555550,d1
                    982:        cmp.l   d1,d0
                    983:        beq     @f
                    984:        pea.l   msg_fail_sr(pc)
                    985:        move.l  d1,-(sp)
                    986:        move.l  d0,-(sp)
                    987:        bsr     result
                    988:        lea.l   12(sp),sp
                    989: @@:
                    990:        fmove.l fpiar,a0
                    991:        move.l  d7,a1   ; d7=0
                    992:        cmpa.l  a1,a0
                    993:        beq     @f
                    994:        pea.l   msg_fail_ir(pc)
                    995:        move.l  a1,-(sp)
                    996:        move.l  a0,-(sp)
                    997:        bsr     result
                    998:        lea.l   12(sp),sp
                    999: @@:
                   1000:        tst.l   d7
                   1001:        bne     @f
                   1002:        PRINT   msg_ok
                   1003: @@:
                   1004:        rts
                   1005: 
                   1006: test_fmovem_imm_to__S_:
                   1007:        PRINT   msg_fmovem_imm_to__S_
                   1008:        fmove.l #0,fpcr
                   1009:        fmove.l #0,fpsr
                   1010:        fmove.l #0,fpiar
                   1011:        SET_FLINE_TRAP
                   1012:        moveq.l #0,d7
                   1013:        lea.l   @f,a3
                   1014:        fmovem.l #$55555555,fpsr
                   1015: @@:
                   1016:        RESTORE_FLINE_TRAP
                   1017:        tst.l   d7
                   1018:        beq     @f
                   1019:        PRINT   msg_fail_trap
                   1020:        rts
                   1021: @@:
                   1022:        fmove.l fpcr,d0
                   1023:        moveq.l #0,d1
                   1024:        cmp.l   d1,d0
                   1025:        beq     @f
                   1026:        pea.l   msg_fail_cr(pc)
                   1027:        move.l  d1,-(sp)
                   1028:        move.l  d0,-(sp)
                   1029:        bsr     result
                   1030:        lea.l   12(sp),sp
                   1031: @@:
                   1032:        fmove.l fpsr,d0
                   1033:        move.l  #$05555550,d1
                   1034:        cmp.l   d1,d0
                   1035:        beq     @f
                   1036:        pea.l   msg_fail_sr(pc)
                   1037:        move.l  d1,-(sp)
                   1038:        move.l  d0,-(sp)
                   1039:        bsr     result
                   1040:        lea.l   12(sp),sp
                   1041: @@:
                   1042:        fmove.l fpiar,a0
                   1043:        move.l  d7,a1   ; d7=0
                   1044:        cmpa.l  a1,a0
                   1045:        beq     @f
                   1046:        pea.l   msg_fail_ir(pc)
                   1047:        move.l  a1,-(sp)
                   1048:        move.l  a0,-(sp)
                   1049:        bsr     result
                   1050:        lea.l   12(sp),sp
                   1051: @@:
                   1052:        tst.l   d7
                   1053:        bne     @f
                   1054:        PRINT   msg_ok
                   1055: @@:
                   1056:        rts
                   1057: 
                   1058: test_fmovem_dn_to__SI:
                   1059:        PRINT   msg_fmovem_dn_to__SI
                   1060:        SET_FLINE_TRAP
                   1061:        moveq.l #0,d7
                   1062:        lea.l   @f,a3
                   1063:        .dc.w   $f200, $8c00
                   1064: @@:
                   1065:        RESTORE_FLINE_TRAP
                   1066:        tst.l   d7
                   1067:        bne     @f
                   1068:        PRINT   msg_fail_notrap
                   1069:        rts
                   1070: @@:
                   1071:        PRINT   msg_oktrap
                   1072:        rts
                   1073: 
                   1074: test_fmovem_an_to__SI:
                   1075:        PRINT   msg_fmovem_an_to__SI
                   1076:        SET_FLINE_TRAP
                   1077:        moveq.l #0,d7
                   1078:        lea.l   @f,a3
                   1079:        .dc.w   $f208, $8c00
                   1080: @@:
                   1081:        RESTORE_FLINE_TRAP
                   1082:        tst.l   d7
                   1083:        bne     @f
                   1084:        PRINT   msg_fail_notrap
                   1085:        rts
                   1086: @@:
                   1087:        PRINT   msg_oktrap
                   1088:        rts
                   1089: 
                   1090: test_fmovem_anin_to__SI:
                   1091:        PRINT   msg_fmovem_anin_to__SI
                   1092:        fmove.l #0,fpcr
                   1093:        fmove.l #0,fpsr
                   1094:        fmove.l #0,fpiar
                   1095:        move.l  #$55555555,workarea
                   1096:        move.l  #$aaaaaaaa,workarea+4
                   1097:        lea.l   workarea(pc),a0
                   1098:        SET_FLINE_TRAP
                   1099:        moveq.l #0,d7
                   1100:        lea.l   @f,a3
                   1101:        fmovem.l (a0),fpsr/fpiar
                   1102: @@:
                   1103:        RESTORE_FLINE_TRAP
                   1104:        tst.l   d7
                   1105:        beq     @f
                   1106:        PRINT   msg_fail_trap
                   1107:        rts
                   1108: @@:
                   1109:        lea.l   workarea(pc),a1
                   1110:        cmpa.l  a1,a0
                   1111:        beq     @f
                   1112:        pea.l   msg_fail_addr(pc)
                   1113:        move.l  a1,-(sp)
                   1114:        move.l  a0,-(sp)
                   1115:        bsr     result
                   1116:        lea.l   12(sp),sp
                   1117: @@:
                   1118:        fmove.l fpcr,d0
                   1119:        moveq.l #0,d1
                   1120:        cmp.l   d1,d0
                   1121:        beq     @f
                   1122:        pea.l   msg_fail_cr(pc)
                   1123:        move.l  d1,-(sp)
                   1124:        move.l  d0,-(sp)
                   1125:        bsr     result
                   1126:        lea.l   12(sp),sp
                   1127: @@:
                   1128:        fmove.l fpsr,d0
                   1129:        move.l  #$05555550,d1
                   1130:        cmp.l   d1,d0
                   1131:        beq     @f
                   1132:        pea.l   msg_fail_sr(pc)
                   1133:        move.l  d1,-(sp)
                   1134:        move.l  d0,-(sp)
                   1135:        bsr     result
                   1136:        lea.l   12(sp),sp
                   1137: @@:
                   1138:        fmove.l fpiar,a0
                   1139:        move.l  #$aaaaaaaa,a1
                   1140:        cmpa.l  a1,a0
                   1141:        beq     @f
                   1142:        pea.l   msg_fail_ir(pc)
                   1143:        move.l  a1,-(sp)
                   1144:        move.l  a0,-(sp)
                   1145:        bsr     result
                   1146:        lea.l   12(sp),sp
                   1147: @@:
                   1148:        tst.l   d7
                   1149:        bne     @f
                   1150:        PRINT   msg_ok
                   1151: @@:
                   1152:        rts
                   1153: 
                   1154: test_fmovem_anpi_to__SI:
                   1155:        PRINT   msg_fmovem_anpi_to__SI
                   1156:        fmove.l #0,fpcr
                   1157:        fmove.l #0,fpsr
                   1158:        fmove.l #0,fpiar
                   1159:        move.l  #$55555555,workarea
                   1160:        move.l  #$aaaaaaaa,workarea+4
                   1161:        lea.l   workarea(pc),a0
                   1162:        SET_FLINE_TRAP
                   1163:        moveq.l #0,d7
                   1164:        lea.l   @f,a3
                   1165:        fmovem.l (a0)+,fpsr/fpiar
                   1166: @@:
                   1167:        RESTORE_FLINE_TRAP
                   1168:        tst.l   d7
                   1169:        beq     @f
                   1170:        PRINT   msg_fail_trap
                   1171:        rts
                   1172: @@:
                   1173:        lea.l workarea+8(pc),a1
                   1174:        cmpa.l  a1,a0
                   1175:        beq     @f
                   1176:        pea.l   msg_fail_addr(pc)
                   1177:        move.l  a1,-(sp)
                   1178:        move.l  a0,-(sp)
                   1179:        bsr     result
                   1180:        lea.l   12(sp),sp
                   1181: @@:
                   1182:        fmove.l fpcr,d0
                   1183:        moveq.l #0,d1
                   1184:        cmp.l   d1,d0
                   1185:        beq     @f
                   1186:        pea.l   msg_fail_cr(pc)
                   1187:        move.l  d1,-(sp)
                   1188:        move.l  d0,-(sp)
                   1189:        bsr     result
                   1190:        lea.l   12(sp),sp
                   1191: @@:
                   1192:        fmove.l fpsr,d0
                   1193:        move.l  #$05555550,d1
                   1194:        cmp.l   d1,d0
                   1195:        beq     @f
                   1196:        pea.l   msg_fail_sr(pc)
                   1197:        move.l  d1,-(sp)
                   1198:        move.l  d0,-(sp)
                   1199:        bsr     result
                   1200:        lea.l   12(sp),sp
                   1201: @@:
                   1202:        fmove.l fpiar,a0
                   1203:        move.l  #$aaaaaaaa,a1
                   1204:        cmpa.l  a1,a0
                   1205:        beq     @f
                   1206:        pea.l   msg_fail_ir(pc)
                   1207:        move.l  a1,-(sp)
                   1208:        move.l  a0,-(sp)
                   1209:        bsr     result
                   1210:        lea.l   12(sp),sp
                   1211: @@:
                   1212:        tst.l   d7
                   1213:        bne     @f
                   1214:        PRINT   msg_ok
                   1215: @@:
                   1216:        rts
                   1217: 
                   1218: test_fmovem_anpd_to__SI:
                   1219:        PRINT   msg_fmovem_anpd_to__SI
                   1220:        fmove.l #0,fpcr
                   1221:        fmove.l #0,fpsr
                   1222:        fmove.l #0,fpiar
                   1223:        move.l  #$55555555,workarea
                   1224:        move.l  #$aaaaaaaa,workarea+4
                   1225:        lea.l   workarea+8(pc),a0
                   1226:        SET_FLINE_TRAP
                   1227:        moveq.l #0,d7
                   1228:        lea.l   @f,a3
                   1229:        fmovem.l -(a0),fpsr/fpiar
                   1230: @@:
                   1231:        RESTORE_FLINE_TRAP
                   1232:        tst.l   d7
                   1233:        beq     @f
                   1234:        PRINT   msg_fail_trap
                   1235:        rts
                   1236: @@:
                   1237:        lea.l   workarea(pc),a1
                   1238:        cmpa.l  a1,a0
                   1239:        beq     @f
                   1240:        pea.l   msg_fail_addr(pc)
                   1241:        move.l  a1,-(sp)
                   1242:        move.l  a0,-(sp)
                   1243:        bsr     result
                   1244:        lea.l   12(sp),sp
                   1245: @@:
                   1246:        fmove.l fpcr,d0
                   1247:        moveq.l #0,d1
                   1248:        cmp.l   d1,d0
                   1249:        beq     @f
                   1250:        pea.l   msg_fail_cr(pc)
                   1251:        move.l  d1,-(sp)
                   1252:        move.l  d0,-(sp)
                   1253:        bsr     result
                   1254:        lea.l   12(sp),sp
                   1255: @@:
                   1256:        fmove.l fpsr,d0
                   1257:        move.l  #$05555550,d1
                   1258:        cmp.l   d1,d0
                   1259:        beq     @f
                   1260:        pea.l   msg_fail_sr(pc)
                   1261:        move.l  d1,-(sp)
                   1262:        move.l  d0,-(sp)
                   1263:        bsr     result
                   1264:        lea.l   12(sp),sp
                   1265: @@:
                   1266:        fmove.l fpiar,a0
                   1267:        move.l  #$aaaaaaaa,a1
                   1268:        cmpa.l  a1,a0
                   1269:        beq     @f
                   1270:        pea.l   msg_fail_ir(pc)
                   1271:        move.l  a1,-(sp)
                   1272:        move.l  a0,-(sp)
                   1273:        bsr     result
                   1274:        lea.l   12(sp),sp
                   1275: @@:
                   1276:        tst.l   d7
                   1277:        bne     @f
                   1278:        PRINT   msg_ok
                   1279: @@:
                   1280:        rts
                   1281: 
                   1282: test_fmovem_imm_to__SI:
                   1283:        PRINT   msg_fmovem_imm_to__SI
                   1284:        fmove.l #0,fpcr
                   1285:        fmove.l #0,fpsr
                   1286:        fmove.l #0,fpiar
                   1287:        SET_FLINE_TRAP
                   1288:        moveq.l #0,d7
                   1289:        lea.l   @f,a3
                   1290:        fmovem.l #$55555555,#$aaaaaaaa,fpsr/fpiar
                   1291: @@:
                   1292:        RESTORE_FLINE_TRAP
                   1293:        tst.l   d7
                   1294:        beq     @f
                   1295:        PRINT   msg_fail_trap
                   1296:        rts
                   1297: @@:
                   1298:        fmove.l fpcr,d0
                   1299:        moveq.l #0,d1
                   1300:        cmp.l   d1,d0
                   1301:        beq     @f
                   1302:        pea.l   msg_fail_cr(pc)
                   1303:        move.l  d1,-(sp)
                   1304:        move.l  d0,-(sp)
                   1305:        bsr     result
                   1306:        lea.l   12(sp),sp
                   1307: @@:
                   1308:        fmove.l fpsr,d0
                   1309:        move.l  #$05555550,d1
                   1310:        cmp.l   d1,d0
                   1311:        beq     @f
                   1312:        pea.l   msg_fail_sr(pc)
                   1313:        move.l  d1,-(sp)
                   1314:        move.l  d0,-(sp)
                   1315:        bsr     result
                   1316:        lea.l   12(sp),sp
                   1317: @@:
                   1318:        fmove.l fpiar,a0
                   1319:        move.l  #$aaaaaaaa,a1
                   1320:        cmpa.l  a1,a0
                   1321:        beq     @f
                   1322:        pea.l   msg_fail_ir(pc)
                   1323:        move.l  a1,-(sp)
                   1324:        move.l  a0,-(sp)
                   1325:        bsr     result
                   1326:        lea.l   12(sp),sp
                   1327: @@:
                   1328:        tst.l   d7
                   1329:        bne     @f
                   1330:        PRINT   msg_ok
                   1331: @@:
                   1332:        rts
                   1333: 
                   1334: test_fmovem_dn_to_C__:
                   1335:        PRINT   msg_fmovem_dn_to_C__
                   1336:        fmove.l #0,fpcr
                   1337:        fmove.l #0,fpsr
                   1338:        fmove.l #0,fpiar
                   1339:        move.l  #$55555555,d0
                   1340:        SET_FLINE_TRAP
                   1341:        moveq.l #0,d7
                   1342:        lea.l   @f,a3
                   1343:        fmovem.l d0,fpcr
                   1344: @@:
                   1345:        RESTORE_FLINE_TRAP
                   1346:        tst.l   d7
                   1347:        beq     @f
                   1348:        PRINT   msg_fail_trap
                   1349:        rts
                   1350: @@:
                   1351:        fmove.l fpcr,d0
                   1352:        move.l  #$00005550,d1
                   1353:        cmp.l   d1,d0
                   1354:        beq     @f
                   1355:        pea.l   msg_fail_cr(pc)
                   1356:        move.l  d1,-(sp)
                   1357:        move.l  d0,-(sp)
                   1358:        bsr     result
                   1359:        lea.l   12(sp),sp
                   1360: @@:
                   1361:        fmove.l fpsr,d0
                   1362:        moveq.l #0,d1
                   1363:        cmp.l   d1,d0
                   1364:        beq     @f
                   1365:        pea.l   msg_fail_sr(pc)
                   1366:        move.l  d1,-(sp)
                   1367:        move.l  d0,-(sp)
                   1368:        bsr     result
                   1369:        lea.l   12(sp),sp
                   1370: @@:
                   1371:        fmove.l fpiar,a0
                   1372:        move.l  d7,a1   ; d7=0
                   1373:        cmpa.l  a1,a0
                   1374:        beq     @f
                   1375:        pea.l   msg_fail_ir(pc)
                   1376:        move.l  a1,-(sp)
                   1377:        move.l  a0,-(sp)
                   1378:        bsr     result
                   1379:        lea.l   12(sp),sp
                   1380: @@:
                   1381:        tst.l   d7
                   1382:        bne     @f
                   1383:        PRINT   msg_ok
                   1384: @@:
                   1385:        rts
                   1386: 
                   1387: test_fmovem_an_to_C__:
                   1388:        PRINT   msg_fmovem_an_to_C__
                   1389:        SET_FLINE_TRAP
                   1390:        moveq.l #0,d7
                   1391:        lea.l   @f,a3
                   1392:        .dc.w   $f208, $9000
                   1393: @@:
                   1394:        RESTORE_FLINE_TRAP
                   1395:        tst.l   d7
                   1396:        bne     @f
                   1397:        PRINT   msg_fail_notrap
                   1398:        rts
                   1399: @@:
                   1400:        PRINT   msg_oktrap
                   1401:        rts
                   1402: 
                   1403: test_fmovem_anin_to_C__:
                   1404:        PRINT   msg_fmovem_anin_to_C__
                   1405:        fmove.l #0,fpcr
                   1406:        fmove.l #0,fpsr
                   1407:        fmove.l #0,fpiar
                   1408:        move.l  #$55555555,workarea
                   1409:        lea.l   workarea(pc),a0
                   1410:        SET_FLINE_TRAP
                   1411:        moveq.l #0,d7
                   1412:        lea.l   @f,a3
                   1413:        fmovem.l (a0),fpcr
                   1414: @@:
                   1415:        RESTORE_FLINE_TRAP
                   1416:        tst.l   d7
                   1417:        beq     @f
                   1418:        PRINT   msg_fail_trap
                   1419:        rts
                   1420: @@:
                   1421:        lea.l   workarea(pc),a1
                   1422:        cmpa.l  a1,a0
                   1423:        beq     @f
                   1424:        pea.l   msg_fail_addr(pc)
                   1425:        move.l  a1,-(sp)
                   1426:        move.l  a0,-(sp)
                   1427:        bsr     result
                   1428:        lea.l   12(sp),sp
                   1429: @@:
                   1430:        fmove.l fpcr,d0
                   1431:        move.l  #$00005550,d1
                   1432:        cmp.l   d1,d0
                   1433:        beq     @f
                   1434:        pea.l   msg_fail_cr(pc)
                   1435:        move.l  d1,-(sp)
                   1436:        move.l  d0,-(sp)
                   1437:        bsr     result
                   1438:        lea.l   12(sp),sp
                   1439: @@:
                   1440:        fmove.l fpsr,d0
                   1441:        moveq.l #0,d1
                   1442:        cmp.l   d1,d0
                   1443:        beq     @f
                   1444:        pea.l   msg_fail_sr(pc)
                   1445:        move.l  d1,-(sp)
                   1446:        move.l  d0,-(sp)
                   1447:        bsr     result
                   1448:        lea.l   12(sp),sp
                   1449: @@:
                   1450:        fmove.l fpiar,a0
                   1451:        move.l  d7,a1   ; d7=0
                   1452:        cmpa.l  a1,a0
                   1453:        beq     @f
                   1454:        pea.l   msg_fail_ir(pc)
                   1455:        move.l  a1,-(sp)
                   1456:        move.l  a0,-(sp)
                   1457:        bsr     result
                   1458:        lea.l   12(sp),sp
                   1459: @@:
                   1460:        tst.l   d7
                   1461:        bne     @f
                   1462:        PRINT   msg_ok
                   1463: @@:
                   1464:        rts
                   1465: 
                   1466: test_fmovem_anpi_to_C__:
                   1467:        PRINT   msg_fmovem_anpi_to_C__
                   1468:        fmove.l #0,fpcr
                   1469:        fmove.l #0,fpsr
                   1470:        fmove.l #0,fpiar
                   1471:        move.l  #$55555555,workarea
                   1472:        lea.l   workarea(pc),a0
                   1473:        SET_FLINE_TRAP
                   1474:        moveq.l #0,d7
                   1475:        lea.l   @f,a3
                   1476:        fmovem.l (a0)+,fpcr
                   1477: @@:
                   1478:        RESTORE_FLINE_TRAP
                   1479:        tst.l   d7
                   1480:        beq     @f
                   1481:        PRINT   msg_fail_trap
                   1482:        rts
                   1483: @@:
                   1484:        lea.l workarea+4(pc),a1
                   1485:        cmpa.l  a1,a0
                   1486:        beq     @f
                   1487:        pea.l   msg_fail_addr(pc)
                   1488:        move.l  a1,-(sp)
                   1489:        move.l  a0,-(sp)
                   1490:        bsr     result
                   1491:        lea.l   12(sp),sp
                   1492: @@:
                   1493:        fmove.l fpcr,d0
                   1494:        move.l  #$00005550,d1
                   1495:        cmp.l   d1,d0
                   1496:        beq     @f
                   1497:        pea.l   msg_fail_cr(pc)
                   1498:        move.l  d1,-(sp)
                   1499:        move.l  d0,-(sp)
                   1500:        bsr     result
                   1501:        lea.l   12(sp),sp
                   1502: @@:
                   1503:        fmove.l fpsr,d0
                   1504:        moveq.l #0,d1
                   1505:        cmp.l   d1,d0
                   1506:        beq     @f
                   1507:        pea.l   msg_fail_sr(pc)
                   1508:        move.l  d1,-(sp)
                   1509:        move.l  d0,-(sp)
                   1510:        bsr     result
                   1511:        lea.l   12(sp),sp
                   1512: @@:
                   1513:        fmove.l fpiar,a0
                   1514:        move.l  d7,a1   ; d7=0
                   1515:        cmpa.l  a1,a0
                   1516:        beq     @f
                   1517:        pea.l   msg_fail_ir(pc)
                   1518:        move.l  a1,-(sp)
                   1519:        move.l  a0,-(sp)
                   1520:        bsr     result
                   1521:        lea.l   12(sp),sp
                   1522: @@:
                   1523:        tst.l   d7
                   1524:        bne     @f
                   1525:        PRINT   msg_ok
                   1526: @@:
                   1527:        rts
                   1528: 
                   1529: test_fmovem_anpd_to_C__:
                   1530:        PRINT   msg_fmovem_anpd_to_C__
                   1531:        fmove.l #0,fpcr
                   1532:        fmove.l #0,fpsr
                   1533:        fmove.l #0,fpiar
                   1534:        move.l  #$55555555,workarea
                   1535:        lea.l   workarea+4(pc),a0
                   1536:        SET_FLINE_TRAP
                   1537:        moveq.l #0,d7
                   1538:        lea.l   @f,a3
                   1539:        fmovem.l -(a0),fpcr
                   1540: @@:
                   1541:        RESTORE_FLINE_TRAP
                   1542:        tst.l   d7
                   1543:        beq     @f
                   1544:        PRINT   msg_fail_trap
                   1545:        rts
                   1546: @@:
                   1547:        lea.l   workarea(pc),a1
                   1548:        cmpa.l  a1,a0
                   1549:        beq     @f
                   1550:        pea.l   msg_fail_addr(pc)
                   1551:        move.l  a1,-(sp)
                   1552:        move.l  a0,-(sp)
                   1553:        bsr     result
                   1554:        lea.l   12(sp),sp
                   1555: @@:
                   1556:        fmove.l fpcr,d0
                   1557:        move.l  #$00005550,d1
                   1558:        cmp.l   d1,d0
                   1559:        beq     @f
                   1560:        pea.l   msg_fail_cr(pc)
                   1561:        move.l  d1,-(sp)
                   1562:        move.l  d0,-(sp)
                   1563:        bsr     result
                   1564:        lea.l   12(sp),sp
                   1565: @@:
                   1566:        fmove.l fpsr,d0
                   1567:        moveq.l #0,d1
                   1568:        cmp.l   d1,d0
                   1569:        beq     @f
                   1570:        pea.l   msg_fail_sr(pc)
                   1571:        move.l  d1,-(sp)
                   1572:        move.l  d0,-(sp)
                   1573:        bsr     result
                   1574:        lea.l   12(sp),sp
                   1575: @@:
                   1576:        fmove.l fpiar,a0
                   1577:        move.l  d7,a1   ; d7=0
                   1578:        cmpa.l  a1,a0
                   1579:        beq     @f
                   1580:        pea.l   msg_fail_ir(pc)
                   1581:        move.l  a1,-(sp)
                   1582:        move.l  a0,-(sp)
                   1583:        bsr     result
                   1584:        lea.l   12(sp),sp
                   1585: @@:
                   1586:        tst.l   d7
                   1587:        bne     @f
                   1588:        PRINT   msg_ok
                   1589: @@:
                   1590:        rts
                   1591: 
                   1592: test_fmovem_imm_to_C__:
                   1593:        PRINT   msg_fmovem_imm_to_C__
                   1594:        fmove.l #0,fpcr
                   1595:        fmove.l #0,fpsr
                   1596:        fmove.l #0,fpiar
                   1597:        SET_FLINE_TRAP
                   1598:        moveq.l #0,d7
                   1599:        lea.l   @f,a3
                   1600:        fmovem.l #$55555555,fpcr
                   1601: @@:
                   1602:        RESTORE_FLINE_TRAP
                   1603:        tst.l   d7
                   1604:        beq     @f
                   1605:        PRINT   msg_fail_trap
                   1606:        rts
                   1607: @@:
                   1608:        fmove.l fpcr,d0
                   1609:        move.l  #$00005550,d1
                   1610:        cmp.l   d1,d0
                   1611:        beq     @f
                   1612:        pea.l   msg_fail_cr(pc)
                   1613:        move.l  d1,-(sp)
                   1614:        move.l  d0,-(sp)
                   1615:        bsr     result
                   1616:        lea.l   12(sp),sp
                   1617: @@:
                   1618:        fmove.l fpsr,d0
                   1619:        moveq.l #0,d1
                   1620:        cmp.l   d1,d0
                   1621:        beq     @f
                   1622:        pea.l   msg_fail_sr(pc)
                   1623:        move.l  d1,-(sp)
                   1624:        move.l  d0,-(sp)
                   1625:        bsr     result
                   1626:        lea.l   12(sp),sp
                   1627: @@:
                   1628:        fmove.l fpiar,a0
                   1629:        move.l  d7,a1   ; d7=0
                   1630:        cmpa.l  a1,a0
                   1631:        beq     @f
                   1632:        pea.l   msg_fail_ir(pc)
                   1633:        move.l  a1,-(sp)
                   1634:        move.l  a0,-(sp)
                   1635:        bsr     result
                   1636:        lea.l   12(sp),sp
                   1637: @@:
                   1638:        tst.l   d7
                   1639:        bne     @f
                   1640:        PRINT   msg_ok
                   1641: @@:
                   1642:        rts
                   1643: 
                   1644: test_fmovem_dn_to_C_I:
                   1645:        PRINT   msg_fmovem_dn_to_C_I
                   1646:        SET_FLINE_TRAP
                   1647:        moveq.l #0,d7
                   1648:        lea.l   @f,a3
                   1649:        .dc.w   $f200, $9400
                   1650: @@:
                   1651:        RESTORE_FLINE_TRAP
                   1652:        tst.l   d7
                   1653:        bne     @f
                   1654:        PRINT   msg_fail_notrap
                   1655:        rts
                   1656: @@:
                   1657:        PRINT   msg_oktrap
                   1658:        rts
                   1659: 
                   1660: test_fmovem_an_to_C_I:
                   1661:        PRINT   msg_fmovem_an_to_C_I
                   1662:        SET_FLINE_TRAP
                   1663:        moveq.l #0,d7
                   1664:        lea.l   @f,a3
                   1665:        .dc.w   $f208, $9400
                   1666: @@:
                   1667:        RESTORE_FLINE_TRAP
                   1668:        tst.l   d7
                   1669:        bne     @f
                   1670:        PRINT   msg_fail_notrap
                   1671:        rts
                   1672: @@:
                   1673:        PRINT   msg_oktrap
                   1674:        rts
                   1675: 
                   1676: test_fmovem_anin_to_C_I:
                   1677:        PRINT   msg_fmovem_anin_to_C_I
                   1678:        fmove.l #0,fpcr
                   1679:        fmove.l #0,fpsr
                   1680:        fmove.l #0,fpiar
                   1681:        move.l  #$55555555,workarea
                   1682:        move.l  #$aaaaaaaa,workarea+4
                   1683:        lea.l   workarea(pc),a0
                   1684:        SET_FLINE_TRAP
                   1685:        moveq.l #0,d7
                   1686:        lea.l   @f,a3
                   1687:        fmovem.l (a0),fpcr/fpiar
                   1688: @@:
                   1689:        RESTORE_FLINE_TRAP
                   1690:        tst.l   d7
                   1691:        beq     @f
                   1692:        PRINT   msg_fail_trap
                   1693:        rts
                   1694: @@:
                   1695:        lea.l   workarea(pc),a1
                   1696:        cmpa.l  a1,a0
                   1697:        beq     @f
                   1698:        pea.l   msg_fail_addr(pc)
                   1699:        move.l  a1,-(sp)
                   1700:        move.l  a0,-(sp)
                   1701:        bsr     result
                   1702:        lea.l   12(sp),sp
                   1703: @@:
                   1704:        fmove.l fpcr,d0
                   1705:        move.l  #$00005550,d1
                   1706:        cmp.l   d1,d0
                   1707:        beq     @f
                   1708:        pea.l   msg_fail_cr(pc)
                   1709:        move.l  d1,-(sp)
                   1710:        move.l  d0,-(sp)
                   1711:        bsr     result
                   1712:        lea.l   12(sp),sp
                   1713: @@:
                   1714:        fmove.l fpsr,d0
                   1715:        moveq.l #0,d1
                   1716:        cmp.l   d1,d0
                   1717:        beq     @f
                   1718:        pea.l   msg_fail_sr(pc)
                   1719:        move.l  d1,-(sp)
                   1720:        move.l  d0,-(sp)
                   1721:        bsr     result
                   1722:        lea.l   12(sp),sp
                   1723: @@:
                   1724:        fmove.l fpiar,a0
                   1725:        move.l  #$aaaaaaaa,a1
                   1726:        cmpa.l  a1,a0
                   1727:        beq     @f
                   1728:        pea.l   msg_fail_ir(pc)
                   1729:        move.l  a1,-(sp)
                   1730:        move.l  a0,-(sp)
                   1731:        bsr     result
                   1732:        lea.l   12(sp),sp
                   1733: @@:
                   1734:        tst.l   d7
                   1735:        bne     @f
                   1736:        PRINT   msg_ok
                   1737: @@:
                   1738:        rts
                   1739: 
                   1740: test_fmovem_anpi_to_C_I:
                   1741:        PRINT   msg_fmovem_anpi_to_C_I
                   1742:        fmove.l #0,fpcr
                   1743:        fmove.l #0,fpsr
                   1744:        fmove.l #0,fpiar
                   1745:        move.l  #$55555555,workarea
                   1746:        move.l  #$aaaaaaaa,workarea+4
                   1747:        lea.l   workarea(pc),a0
                   1748:        SET_FLINE_TRAP
                   1749:        moveq.l #0,d7
                   1750:        lea.l   @f,a3
                   1751:        fmovem.l (a0)+,fpcr/fpiar
                   1752: @@:
                   1753:        RESTORE_FLINE_TRAP
                   1754:        tst.l   d7
                   1755:        beq     @f
                   1756:        PRINT   msg_fail_trap
                   1757:        rts
                   1758: @@:
                   1759:        lea.l workarea+8(pc),a1
                   1760:        cmpa.l  a1,a0
                   1761:        beq     @f
                   1762:        pea.l   msg_fail_addr(pc)
                   1763:        move.l  a1,-(sp)
                   1764:        move.l  a0,-(sp)
                   1765:        bsr     result
                   1766:        lea.l   12(sp),sp
                   1767: @@:
                   1768:        fmove.l fpcr,d0
                   1769:        move.l  #$00005550,d1
                   1770:        cmp.l   d1,d0
                   1771:        beq     @f
                   1772:        pea.l   msg_fail_cr(pc)
                   1773:        move.l  d1,-(sp)
                   1774:        move.l  d0,-(sp)
                   1775:        bsr     result
                   1776:        lea.l   12(sp),sp
                   1777: @@:
                   1778:        fmove.l fpsr,d0
                   1779:        moveq.l #0,d1
                   1780:        cmp.l   d1,d0
                   1781:        beq     @f
                   1782:        pea.l   msg_fail_sr(pc)
                   1783:        move.l  d1,-(sp)
                   1784:        move.l  d0,-(sp)
                   1785:        bsr     result
                   1786:        lea.l   12(sp),sp
                   1787: @@:
                   1788:        fmove.l fpiar,a0
                   1789:        move.l  #$aaaaaaaa,a1
                   1790:        cmpa.l  a1,a0
                   1791:        beq     @f
                   1792:        pea.l   msg_fail_ir(pc)
                   1793:        move.l  a1,-(sp)
                   1794:        move.l  a0,-(sp)
                   1795:        bsr     result
                   1796:        lea.l   12(sp),sp
                   1797: @@:
                   1798:        tst.l   d7
                   1799:        bne     @f
                   1800:        PRINT   msg_ok
                   1801: @@:
                   1802:        rts
                   1803: 
                   1804: test_fmovem_anpd_to_C_I:
                   1805:        PRINT   msg_fmovem_anpd_to_C_I
                   1806:        fmove.l #0,fpcr
                   1807:        fmove.l #0,fpsr
                   1808:        fmove.l #0,fpiar
                   1809:        move.l  #$55555555,workarea
                   1810:        move.l  #$aaaaaaaa,workarea+4
                   1811:        lea.l   workarea+8(pc),a0
                   1812:        SET_FLINE_TRAP
                   1813:        moveq.l #0,d7
                   1814:        lea.l   @f,a3
                   1815:        fmovem.l -(a0),fpcr/fpiar
                   1816: @@:
                   1817:        RESTORE_FLINE_TRAP
                   1818:        tst.l   d7
                   1819:        beq     @f
                   1820:        PRINT   msg_fail_trap
                   1821:        rts
                   1822: @@:
                   1823:        lea.l   workarea(pc),a1
                   1824:        cmpa.l  a1,a0
                   1825:        beq     @f
                   1826:        pea.l   msg_fail_addr(pc)
                   1827:        move.l  a1,-(sp)
                   1828:        move.l  a0,-(sp)
                   1829:        bsr     result
                   1830:        lea.l   12(sp),sp
                   1831: @@:
                   1832:        fmove.l fpcr,d0
                   1833:        move.l  #$00005550,d1
                   1834:        cmp.l   d1,d0
                   1835:        beq     @f
                   1836:        pea.l   msg_fail_cr(pc)
                   1837:        move.l  d1,-(sp)
                   1838:        move.l  d0,-(sp)
                   1839:        bsr     result
                   1840:        lea.l   12(sp),sp
                   1841: @@:
                   1842:        fmove.l fpsr,d0
                   1843:        moveq.l #0,d1
                   1844:        cmp.l   d1,d0
                   1845:        beq     @f
                   1846:        pea.l   msg_fail_sr(pc)
                   1847:        move.l  d1,-(sp)
                   1848:        move.l  d0,-(sp)
                   1849:        bsr     result
                   1850:        lea.l   12(sp),sp
                   1851: @@:
                   1852:        fmove.l fpiar,a0
                   1853:        move.l  #$aaaaaaaa,a1
                   1854:        cmpa.l  a1,a0
                   1855:        beq     @f
                   1856:        pea.l   msg_fail_ir(pc)
                   1857:        move.l  a1,-(sp)
                   1858:        move.l  a0,-(sp)
                   1859:        bsr     result
                   1860:        lea.l   12(sp),sp
                   1861: @@:
                   1862:        tst.l   d7
                   1863:        bne     @f
                   1864:        PRINT   msg_ok
                   1865: @@:
                   1866:        rts
                   1867: 
                   1868: test_fmovem_imm_to_C_I:
                   1869:        PRINT   msg_fmovem_imm_to_C_I
                   1870:        fmove.l #0,fpcr
                   1871:        fmove.l #0,fpsr
                   1872:        fmove.l #0,fpiar
                   1873:        SET_FLINE_TRAP
                   1874:        moveq.l #0,d7
                   1875:        lea.l   @f,a3
                   1876:        fmovem.l #$55555555,#$aaaaaaaa,fpcr/fpiar
                   1877: @@:
                   1878:        RESTORE_FLINE_TRAP
                   1879:        tst.l   d7
                   1880:        beq     @f
                   1881:        PRINT   msg_fail_trap
                   1882:        rts
                   1883: @@:
                   1884:        fmove.l fpcr,d0
                   1885:        move.l  #$00005550,d1
                   1886:        cmp.l   d1,d0
                   1887:        beq     @f
                   1888:        pea.l   msg_fail_cr(pc)
                   1889:        move.l  d1,-(sp)
                   1890:        move.l  d0,-(sp)
                   1891:        bsr     result
                   1892:        lea.l   12(sp),sp
                   1893: @@:
                   1894:        fmove.l fpsr,d0
                   1895:        moveq.l #0,d1
                   1896:        cmp.l   d1,d0
                   1897:        beq     @f
                   1898:        pea.l   msg_fail_sr(pc)
                   1899:        move.l  d1,-(sp)
                   1900:        move.l  d0,-(sp)
                   1901:        bsr     result
                   1902:        lea.l   12(sp),sp
                   1903: @@:
                   1904:        fmove.l fpiar,a0
                   1905:        move.l  #$aaaaaaaa,a1
                   1906:        cmpa.l  a1,a0
                   1907:        beq     @f
                   1908:        pea.l   msg_fail_ir(pc)
                   1909:        move.l  a1,-(sp)
                   1910:        move.l  a0,-(sp)
                   1911:        bsr     result
                   1912:        lea.l   12(sp),sp
                   1913: @@:
                   1914:        tst.l   d7
                   1915:        bne     @f
                   1916:        PRINT   msg_ok
                   1917: @@:
                   1918:        rts
                   1919: 
                   1920: test_fmovem_dn_to_CS_:
                   1921:        PRINT   msg_fmovem_dn_to_CS_
                   1922:        SET_FLINE_TRAP
                   1923:        moveq.l #0,d7
                   1924:        lea.l   @f,a3
                   1925:        .dc.w   $f200, $9800
                   1926: @@:
                   1927:        RESTORE_FLINE_TRAP
                   1928:        tst.l   d7
                   1929:        bne     @f
                   1930:        PRINT   msg_fail_notrap
                   1931:        rts
                   1932: @@:
                   1933:        PRINT   msg_oktrap
                   1934:        rts
                   1935: 
                   1936: test_fmovem_an_to_CS_:
                   1937:        PRINT   msg_fmovem_an_to_CS_
                   1938:        SET_FLINE_TRAP
                   1939:        moveq.l #0,d7
                   1940:        lea.l   @f,a3
                   1941:        .dc.w   $f208, $9800
                   1942: @@:
                   1943:        RESTORE_FLINE_TRAP
                   1944:        tst.l   d7
                   1945:        bne     @f
                   1946:        PRINT   msg_fail_notrap
                   1947:        rts
                   1948: @@:
                   1949:        PRINT   msg_oktrap
                   1950:        rts
                   1951: 
                   1952: test_fmovem_anin_to_CS_:
                   1953:        PRINT   msg_fmovem_anin_to_CS_
                   1954:        fmove.l #0,fpcr
                   1955:        fmove.l #0,fpsr
                   1956:        fmove.l #0,fpiar
                   1957:        move.l  #$55555555,workarea
                   1958:        move.l  #$aaaaaaaa,workarea+4
                   1959:        lea.l   workarea(pc),a0
                   1960:        SET_FLINE_TRAP
                   1961:        moveq.l #0,d7
                   1962:        lea.l   @f,a3
                   1963:        fmovem.l (a0),fpcr/fpsr
                   1964: @@:
                   1965:        RESTORE_FLINE_TRAP
                   1966:        tst.l   d7
                   1967:        beq     @f
                   1968:        PRINT   msg_fail_trap
                   1969:        rts
                   1970: @@:
                   1971:        lea.l   workarea(pc),a1
                   1972:        cmpa.l  a1,a0
                   1973:        beq     @f
                   1974:        pea.l   msg_fail_addr(pc)
                   1975:        move.l  a1,-(sp)
                   1976:        move.l  a0,-(sp)
                   1977:        bsr     result
                   1978:        lea.l   12(sp),sp
                   1979: @@:
                   1980:        fmove.l fpcr,d0
                   1981:        move.l  #$00005550,d1
                   1982:        cmp.l   d1,d0
                   1983:        beq     @f
                   1984:        pea.l   msg_fail_cr(pc)
                   1985:        move.l  d1,-(sp)
                   1986:        move.l  d0,-(sp)
                   1987:        bsr     result
                   1988:        lea.l   12(sp),sp
                   1989: @@:
                   1990:        fmove.l fpsr,d0
                   1991:        move.l  #$0aaaaaa8,d1
                   1992:        cmp.l   d1,d0
                   1993:        beq     @f
                   1994:        pea.l   msg_fail_sr(pc)
                   1995:        move.l  d1,-(sp)
                   1996:        move.l  d0,-(sp)
                   1997:        bsr     result
                   1998:        lea.l   12(sp),sp
                   1999: @@:
                   2000:        fmove.l fpiar,a0
                   2001:        move.l  d7,a1   ; d7=0
                   2002:        cmpa.l  a1,a0
                   2003:        beq     @f
                   2004:        pea.l   msg_fail_ir(pc)
                   2005:        move.l  a1,-(sp)
                   2006:        move.l  a0,-(sp)
                   2007:        bsr     result
                   2008:        lea.l   12(sp),sp
                   2009: @@:
                   2010:        tst.l   d7
                   2011:        bne     @f
                   2012:        PRINT   msg_ok
                   2013: @@:
                   2014:        rts
                   2015: 
                   2016: test_fmovem_anpi_to_CS_:
                   2017:        PRINT   msg_fmovem_anpi_to_CS_
                   2018:        fmove.l #0,fpcr
                   2019:        fmove.l #0,fpsr
                   2020:        fmove.l #0,fpiar
                   2021:        move.l  #$55555555,workarea
                   2022:        move.l  #$aaaaaaaa,workarea+4
                   2023:        lea.l   workarea(pc),a0
                   2024:        SET_FLINE_TRAP
                   2025:        moveq.l #0,d7
                   2026:        lea.l   @f,a3
                   2027:        fmovem.l (a0)+,fpcr/fpsr
                   2028: @@:
                   2029:        RESTORE_FLINE_TRAP
                   2030:        tst.l   d7
                   2031:        beq     @f
                   2032:        PRINT   msg_fail_trap
                   2033:        rts
                   2034: @@:
                   2035:        lea.l workarea+8(pc),a1
                   2036:        cmpa.l  a1,a0
                   2037:        beq     @f
                   2038:        pea.l   msg_fail_addr(pc)
                   2039:        move.l  a1,-(sp)
                   2040:        move.l  a0,-(sp)
                   2041:        bsr     result
                   2042:        lea.l   12(sp),sp
                   2043: @@:
                   2044:        fmove.l fpcr,d0
                   2045:        move.l  #$00005550,d1
                   2046:        cmp.l   d1,d0
                   2047:        beq     @f
                   2048:        pea.l   msg_fail_cr(pc)
                   2049:        move.l  d1,-(sp)
                   2050:        move.l  d0,-(sp)
                   2051:        bsr     result
                   2052:        lea.l   12(sp),sp
                   2053: @@:
                   2054:        fmove.l fpsr,d0
                   2055:        move.l  #$0aaaaaa8,d1
                   2056:        cmp.l   d1,d0
                   2057:        beq     @f
                   2058:        pea.l   msg_fail_sr(pc)
                   2059:        move.l  d1,-(sp)
                   2060:        move.l  d0,-(sp)
                   2061:        bsr     result
                   2062:        lea.l   12(sp),sp
                   2063: @@:
                   2064:        fmove.l fpiar,a0
                   2065:        move.l  d7,a1   ; d7=0
                   2066:        cmpa.l  a1,a0
                   2067:        beq     @f
                   2068:        pea.l   msg_fail_ir(pc)
                   2069:        move.l  a1,-(sp)
                   2070:        move.l  a0,-(sp)
                   2071:        bsr     result
                   2072:        lea.l   12(sp),sp
                   2073: @@:
                   2074:        tst.l   d7
                   2075:        bne     @f
                   2076:        PRINT   msg_ok
                   2077: @@:
                   2078:        rts
                   2079: 
                   2080: test_fmovem_anpd_to_CS_:
                   2081:        PRINT   msg_fmovem_anpd_to_CS_
                   2082:        fmove.l #0,fpcr
                   2083:        fmove.l #0,fpsr
                   2084:        fmove.l #0,fpiar
                   2085:        move.l  #$55555555,workarea
                   2086:        move.l  #$aaaaaaaa,workarea+4
                   2087:        lea.l   workarea+8(pc),a0
                   2088:        SET_FLINE_TRAP
                   2089:        moveq.l #0,d7
                   2090:        lea.l   @f,a3
                   2091:        fmovem.l -(a0),fpcr/fpsr
                   2092: @@:
                   2093:        RESTORE_FLINE_TRAP
                   2094:        tst.l   d7
                   2095:        beq     @f
                   2096:        PRINT   msg_fail_trap
                   2097:        rts
                   2098: @@:
                   2099:        lea.l   workarea(pc),a1
                   2100:        cmpa.l  a1,a0
                   2101:        beq     @f
                   2102:        pea.l   msg_fail_addr(pc)
                   2103:        move.l  a1,-(sp)
                   2104:        move.l  a0,-(sp)
                   2105:        bsr     result
                   2106:        lea.l   12(sp),sp
                   2107: @@:
                   2108:        fmove.l fpcr,d0
                   2109:        move.l  #$00005550,d1
                   2110:        cmp.l   d1,d0
                   2111:        beq     @f
                   2112:        pea.l   msg_fail_cr(pc)
                   2113:        move.l  d1,-(sp)
                   2114:        move.l  d0,-(sp)
                   2115:        bsr     result
                   2116:        lea.l   12(sp),sp
                   2117: @@:
                   2118:        fmove.l fpsr,d0
                   2119:        move.l  #$0aaaaaa8,d1
                   2120:        cmp.l   d1,d0
                   2121:        beq     @f
                   2122:        pea.l   msg_fail_sr(pc)
                   2123:        move.l  d1,-(sp)
                   2124:        move.l  d0,-(sp)
                   2125:        bsr     result
                   2126:        lea.l   12(sp),sp
                   2127: @@:
                   2128:        fmove.l fpiar,a0
                   2129:        move.l  d7,a1   ; d7=0
                   2130:        cmpa.l  a1,a0
                   2131:        beq     @f
                   2132:        pea.l   msg_fail_ir(pc)
                   2133:        move.l  a1,-(sp)
                   2134:        move.l  a0,-(sp)
                   2135:        bsr     result
                   2136:        lea.l   12(sp),sp
                   2137: @@:
                   2138:        tst.l   d7
                   2139:        bne     @f
                   2140:        PRINT   msg_ok
                   2141: @@:
                   2142:        rts
                   2143: 
                   2144: test_fmovem_imm_to_CS_:
                   2145:        PRINT   msg_fmovem_imm_to_CS_
                   2146:        fmove.l #0,fpcr
                   2147:        fmove.l #0,fpsr
                   2148:        fmove.l #0,fpiar
                   2149:        SET_FLINE_TRAP
                   2150:        moveq.l #0,d7
                   2151:        lea.l   @f,a3
                   2152:        fmovem.l #$55555555,#$aaaaaaaa,fpcr/fpsr
                   2153: @@:
                   2154:        RESTORE_FLINE_TRAP
                   2155:        tst.l   d7
                   2156:        beq     @f
                   2157:        PRINT   msg_fail_trap
                   2158:        rts
                   2159: @@:
                   2160:        fmove.l fpcr,d0
                   2161:        move.l  #$00005550,d1
                   2162:        cmp.l   d1,d0
                   2163:        beq     @f
                   2164:        pea.l   msg_fail_cr(pc)
                   2165:        move.l  d1,-(sp)
                   2166:        move.l  d0,-(sp)
                   2167:        bsr     result
                   2168:        lea.l   12(sp),sp
                   2169: @@:
                   2170:        fmove.l fpsr,d0
                   2171:        move.l  #$0aaaaaa8,d1
                   2172:        cmp.l   d1,d0
                   2173:        beq     @f
                   2174:        pea.l   msg_fail_sr(pc)
                   2175:        move.l  d1,-(sp)
                   2176:        move.l  d0,-(sp)
                   2177:        bsr     result
                   2178:        lea.l   12(sp),sp
                   2179: @@:
                   2180:        fmove.l fpiar,a0
                   2181:        move.l  d7,a1   ; d7=0
                   2182:        cmpa.l  a1,a0
                   2183:        beq     @f
                   2184:        pea.l   msg_fail_ir(pc)
                   2185:        move.l  a1,-(sp)
                   2186:        move.l  a0,-(sp)
                   2187:        bsr     result
                   2188:        lea.l   12(sp),sp
                   2189: @@:
                   2190:        tst.l   d7
                   2191:        bne     @f
                   2192:        PRINT   msg_ok
                   2193: @@:
                   2194:        rts
                   2195: 
                   2196: test_fmovem_dn_to_CSI:
                   2197:        PRINT   msg_fmovem_dn_to_CSI
                   2198:        SET_FLINE_TRAP
                   2199:        moveq.l #0,d7
                   2200:        lea.l   @f,a3
                   2201:        .dc.w   $f200, $9c00
                   2202: @@:
                   2203:        RESTORE_FLINE_TRAP
                   2204:        tst.l   d7
                   2205:        bne     @f
                   2206:        PRINT   msg_fail_notrap
                   2207:        rts
                   2208: @@:
                   2209:        PRINT   msg_oktrap
                   2210:        rts
                   2211: 
                   2212: test_fmovem_an_to_CSI:
                   2213:        PRINT   msg_fmovem_an_to_CSI
                   2214:        SET_FLINE_TRAP
                   2215:        moveq.l #0,d7
                   2216:        lea.l   @f,a3
                   2217:        .dc.w   $f208, $9c00
                   2218: @@:
                   2219:        RESTORE_FLINE_TRAP
                   2220:        tst.l   d7
                   2221:        bne     @f
                   2222:        PRINT   msg_fail_notrap
                   2223:        rts
                   2224: @@:
                   2225:        PRINT   msg_oktrap
                   2226:        rts
                   2227: 
                   2228: test_fmovem_anin_to_CSI:
                   2229:        PRINT   msg_fmovem_anin_to_CSI
                   2230:        fmove.l #0,fpcr
                   2231:        fmove.l #0,fpsr
                   2232:        fmove.l #0,fpiar
                   2233:        move.l  #$55555555,workarea
                   2234:        move.l  #$aaaaaaaa,workarea+4
                   2235:        move.l  #$33333333,workarea+8
                   2236:        lea.l   workarea(pc),a0
                   2237:        SET_FLINE_TRAP
                   2238:        moveq.l #0,d7
                   2239:        lea.l   @f,a3
                   2240:        fmovem.l (a0),fpcr/fpsr/fpiar
                   2241: @@:
                   2242:        RESTORE_FLINE_TRAP
                   2243:        tst.l   d7
                   2244:        beq     @f
                   2245:        PRINT   msg_fail_trap
                   2246:        rts
                   2247: @@:
                   2248:        lea.l   workarea(pc),a1
                   2249:        cmpa.l  a1,a0
                   2250:        beq     @f
                   2251:        pea.l   msg_fail_addr(pc)
                   2252:        move.l  a1,-(sp)
                   2253:        move.l  a0,-(sp)
                   2254:        bsr     result
                   2255:        lea.l   12(sp),sp
                   2256: @@:
                   2257:        fmove.l fpcr,d0
                   2258:        move.l  #$00005550,d1
                   2259:        cmp.l   d1,d0
                   2260:        beq     @f
                   2261:        pea.l   msg_fail_cr(pc)
                   2262:        move.l  d1,-(sp)
                   2263:        move.l  d0,-(sp)
                   2264:        bsr     result
                   2265:        lea.l   12(sp),sp
                   2266: @@:
                   2267:        fmove.l fpsr,d0
                   2268:        move.l  #$0aaaaaa8,d1
                   2269:        cmp.l   d1,d0
                   2270:        beq     @f
                   2271:        pea.l   msg_fail_sr(pc)
                   2272:        move.l  d1,-(sp)
                   2273:        move.l  d0,-(sp)
                   2274:        bsr     result
                   2275:        lea.l   12(sp),sp
                   2276: @@:
                   2277:        fmove.l fpiar,a0
                   2278:        move.l  #$33333333,a1
                   2279:        cmpa.l  a1,a0
                   2280:        beq     @f
                   2281:        pea.l   msg_fail_ir(pc)
                   2282:        move.l  a1,-(sp)
                   2283:        move.l  a0,-(sp)
                   2284:        bsr     result
                   2285:        lea.l   12(sp),sp
                   2286: @@:
                   2287:        tst.l   d7
                   2288:        bne     @f
                   2289:        PRINT   msg_ok
                   2290: @@:
                   2291:        rts
                   2292: 
                   2293: test_fmovem_anpi_to_CSI:
                   2294:        PRINT   msg_fmovem_anpi_to_CSI
                   2295:        fmove.l #0,fpcr
                   2296:        fmove.l #0,fpsr
                   2297:        fmove.l #0,fpiar
                   2298:        move.l  #$55555555,workarea
                   2299:        move.l  #$aaaaaaaa,workarea+4
                   2300:        move.l  #$33333333,workarea+8
                   2301:        lea.l   workarea(pc),a0
                   2302:        SET_FLINE_TRAP
                   2303:        moveq.l #0,d7
                   2304:        lea.l   @f,a3
                   2305:        fmovem.l (a0)+,fpcr/fpsr/fpiar
                   2306: @@:
                   2307:        RESTORE_FLINE_TRAP
                   2308:        tst.l   d7
                   2309:        beq     @f
                   2310:        PRINT   msg_fail_trap
                   2311:        rts
                   2312: @@:
                   2313:        lea.l workarea+12(pc),a1
                   2314:        cmpa.l  a1,a0
                   2315:        beq     @f
                   2316:        pea.l   msg_fail_addr(pc)
                   2317:        move.l  a1,-(sp)
                   2318:        move.l  a0,-(sp)
                   2319:        bsr     result
                   2320:        lea.l   12(sp),sp
                   2321: @@:
                   2322:        fmove.l fpcr,d0
                   2323:        move.l  #$00005550,d1
                   2324:        cmp.l   d1,d0
                   2325:        beq     @f
                   2326:        pea.l   msg_fail_cr(pc)
                   2327:        move.l  d1,-(sp)
                   2328:        move.l  d0,-(sp)
                   2329:        bsr     result
                   2330:        lea.l   12(sp),sp
                   2331: @@:
                   2332:        fmove.l fpsr,d0
                   2333:        move.l  #$0aaaaaa8,d1
                   2334:        cmp.l   d1,d0
                   2335:        beq     @f
                   2336:        pea.l   msg_fail_sr(pc)
                   2337:        move.l  d1,-(sp)
                   2338:        move.l  d0,-(sp)
                   2339:        bsr     result
                   2340:        lea.l   12(sp),sp
                   2341: @@:
                   2342:        fmove.l fpiar,a0
                   2343:        move.l  #$33333333,a1
                   2344:        cmpa.l  a1,a0
                   2345:        beq     @f
                   2346:        pea.l   msg_fail_ir(pc)
                   2347:        move.l  a1,-(sp)
                   2348:        move.l  a0,-(sp)
                   2349:        bsr     result
                   2350:        lea.l   12(sp),sp
                   2351: @@:
                   2352:        tst.l   d7
                   2353:        bne     @f
                   2354:        PRINT   msg_ok
                   2355: @@:
                   2356:        rts
                   2357: 
                   2358: test_fmovem_anpd_to_CSI:
                   2359:        PRINT   msg_fmovem_anpd_to_CSI
                   2360:        fmove.l #0,fpcr
                   2361:        fmove.l #0,fpsr
                   2362:        fmove.l #0,fpiar
                   2363:        move.l  #$55555555,workarea
                   2364:        move.l  #$aaaaaaaa,workarea+4
                   2365:        move.l  #$33333333,workarea+8
                   2366:        lea.l   workarea+12(pc),a0
                   2367:        SET_FLINE_TRAP
                   2368:        moveq.l #0,d7
                   2369:        lea.l   @f,a3
                   2370:        fmovem.l -(a0),fpcr/fpsr/fpiar
                   2371: @@:
                   2372:        RESTORE_FLINE_TRAP
                   2373:        tst.l   d7
                   2374:        beq     @f
                   2375:        PRINT   msg_fail_trap
                   2376:        rts
                   2377: @@:
                   2378:        lea.l   workarea(pc),a1
                   2379:        cmpa.l  a1,a0
                   2380:        beq     @f
                   2381:        pea.l   msg_fail_addr(pc)
                   2382:        move.l  a1,-(sp)
                   2383:        move.l  a0,-(sp)
                   2384:        bsr     result
                   2385:        lea.l   12(sp),sp
                   2386: @@:
                   2387:        fmove.l fpcr,d0
                   2388:        move.l  #$00005550,d1
                   2389:        cmp.l   d1,d0
                   2390:        beq     @f
                   2391:        pea.l   msg_fail_cr(pc)
                   2392:        move.l  d1,-(sp)
                   2393:        move.l  d0,-(sp)
                   2394:        bsr     result
                   2395:        lea.l   12(sp),sp
                   2396: @@:
                   2397:        fmove.l fpsr,d0
                   2398:        move.l  #$0aaaaaa8,d1
                   2399:        cmp.l   d1,d0
                   2400:        beq     @f
                   2401:        pea.l   msg_fail_sr(pc)
                   2402:        move.l  d1,-(sp)
                   2403:        move.l  d0,-(sp)
                   2404:        bsr     result
                   2405:        lea.l   12(sp),sp
                   2406: @@:
                   2407:        fmove.l fpiar,a0
                   2408:        move.l  #$33333333,a1
                   2409:        cmpa.l  a1,a0
                   2410:        beq     @f
                   2411:        pea.l   msg_fail_ir(pc)
                   2412:        move.l  a1,-(sp)
                   2413:        move.l  a0,-(sp)
                   2414:        bsr     result
                   2415:        lea.l   12(sp),sp
                   2416: @@:
                   2417:        tst.l   d7
                   2418:        bne     @f
                   2419:        PRINT   msg_ok
                   2420: @@:
                   2421:        rts
                   2422: 
                   2423: test_fmovem_imm_to_CSI:
                   2424:        PRINT   msg_fmovem_imm_to_CSI
                   2425:        fmove.l #0,fpcr
                   2426:        fmove.l #0,fpsr
                   2427:        fmove.l #0,fpiar
                   2428:        SET_FLINE_TRAP
                   2429:        moveq.l #0,d7
                   2430:        lea.l   @f,a3
                   2431:        fmovem.l #$55555555,#$aaaaaaaa,#$33333333,fpcr/fpsr/fpiar
                   2432: @@:
                   2433:        RESTORE_FLINE_TRAP
                   2434:        tst.l   d7
                   2435:        beq     @f
                   2436:        PRINT   msg_fail_trap
                   2437:        rts
                   2438: @@:
                   2439:        fmove.l fpcr,d0
                   2440:        move.l  #$00005550,d1
                   2441:        cmp.l   d1,d0
                   2442:        beq     @f
                   2443:        pea.l   msg_fail_cr(pc)
                   2444:        move.l  d1,-(sp)
                   2445:        move.l  d0,-(sp)
                   2446:        bsr     result
                   2447:        lea.l   12(sp),sp
                   2448: @@:
                   2449:        fmove.l fpsr,d0
                   2450:        move.l  #$0aaaaaa8,d1
                   2451:        cmp.l   d1,d0
                   2452:        beq     @f
                   2453:        pea.l   msg_fail_sr(pc)
                   2454:        move.l  d1,-(sp)
                   2455:        move.l  d0,-(sp)
                   2456:        bsr     result
                   2457:        lea.l   12(sp),sp
                   2458: @@:
                   2459:        fmove.l fpiar,a0
                   2460:        move.l  #$33333333,a1
                   2461:        cmpa.l  a1,a0
                   2462:        beq     @f
                   2463:        pea.l   msg_fail_ir(pc)
                   2464:        move.l  a1,-(sp)
                   2465:        move.l  a0,-(sp)
                   2466:        bsr     result
                   2467:        lea.l   12(sp),sp
                   2468: @@:
                   2469:        tst.l   d7
                   2470:        bne     @f
                   2471:        PRINT   msg_ok
                   2472: @@:
                   2473:        rts
                   2474: 
                   2475: test_fmovem_____to_dn:
                   2476:        PRINT   msg_fmovem_____to_dn
                   2477:        fmove.l #$00000000,fpcr
                   2478:        fmove.l #$00000000,fpsr
                   2479:        fmove.l #$55555555,fpiar
                   2480:        SET_FLINE_TRAP
                   2481:        moveq.l #0,d7
                   2482:        lea.l   @f,a3
                   2483:        .dc.w   $f200, $a000
                   2484: @@:
                   2485:        RESTORE_FLINE_TRAP
                   2486:        tst.l   d7
                   2487:        beq     @f
                   2488:        PRINT   msg_fail_trap
                   2489:        rts
                   2490: @@:
                   2491:        move.l  #$55555555,d1
                   2492:        cmp.l   d1,d0
                   2493:        beq     @f
                   2494:        pea.l   msg_fail(pc)
                   2495:        move.l  d1,-(sp)
                   2496:        move.l  d0,-(sp)
                   2497:        bsr     result
                   2498:        lea.l   12(sp),sp
                   2499: @@:
                   2500:        tst.l   d7
                   2501:        bne     @f
                   2502:        PRINT   msg_ok
                   2503: @@:
                   2504:        rts
                   2505: 
                   2506: test_fmovem_____to_an:
                   2507:        PRINT   msg_fmovem_____to_an
                   2508:        fmove.l #$00000000,fpcr
                   2509:        fmove.l #$00000000,fpsr
                   2510:        fmove.l #$55555555,fpiar
                   2511:        SET_FLINE_TRAP
                   2512:        moveq.l #0,d7
                   2513:        lea.l   @f,a3
                   2514:        .dc.w   $f208, $a000
                   2515: @@:
                   2516:        RESTORE_FLINE_TRAP
                   2517:        tst.l   d7
                   2518:        beq     @f
                   2519:        PRINT   msg_fail_trap
                   2520:        rts
                   2521: @@:
                   2522:        movea.l #$55555555,a1
                   2523:        cmp.l   a1,a0
                   2524:        beq     @f
                   2525:        pea.l   msg_fail(pc)
                   2526:        move.l  a1,-(sp)
                   2527:        move.l  a0,-(sp)
                   2528:        bsr     result
                   2529:        lea.l   12(sp),sp
                   2530: @@:
                   2531:        tst.l   d7
                   2532:        bne     @f
                   2533:        PRINT   msg_ok
                   2534: @@:
                   2535:        rts
                   2536: 
                   2537: test_fmovem_____to_anin:
                   2538:        PRINT   msg_fmovem_____to_anin
                   2539:        fmove.l #$00000000,fpcr
                   2540:        fmove.l #$00000000,fpsr
                   2541:        fmove.l #$55555555,fpiar
                   2542:        lea.l   workarea(pc),a0
                   2543:        SET_FLINE_TRAP
                   2544:        moveq.l #0,d7
                   2545:        lea.l   @f,a3
                   2546:        .dc.w   $f210, $a000
                   2547: @@:
                   2548:        RESTORE_FLINE_TRAP
                   2549:        tst.l   d7
                   2550:        beq     @f
                   2551:        PRINT   msg_fail_trap
                   2552:        rts
                   2553: @@:
                   2554:        lea.l   workarea(pc),a1
                   2555:        cmpa.l  a1,a0
                   2556:        beq     @f
                   2557:        pea.l   msg_fail_addr(pc)
                   2558:        move.l  a1,-(sp)
                   2559:        move.l  a0,-(sp)
                   2560:        bsr     result
                   2561:        lea.l   12(sp),sp
                   2562: @@:
                   2563:        move.l  #$55555555,d1
                   2564:        cmp.l   workarea+0,d1
                   2565:        beq     @f
                   2566:        pea.l   msg_fail(pc)
                   2567:        move.l  d1,-(sp)
                   2568:        move.l  workarea+4,-(sp)
                   2569:        bsr     result
                   2570:        lea.l   12(sp),sp
                   2571: @@:
                   2572:        tst.l   d7
                   2573:        bne     @f
                   2574:        PRINT   msg_ok
                   2575: @@:
                   2576:        rts
                   2577: 
                   2578: test_fmovem_____to_anpi:
                   2579:        PRINT   msg_fmovem_____to_anpi
                   2580:        fmove.l #$00000000,fpcr
                   2581:        fmove.l #$00000000,fpsr
                   2582:        fmove.l #$55555555,fpiar
                   2583:        lea.l   workarea(pc),a0
                   2584:        SET_FLINE_TRAP
                   2585:        moveq.l #0,d7
                   2586:        lea.l   @f,a3
                   2587:        .dc.w   $f218, $a000
                   2588: @@:
                   2589:        RESTORE_FLINE_TRAP
                   2590:        tst.l   d7
                   2591:        beq     @f
                   2592:        PRINT   msg_fail_trap
                   2593:        rts
                   2594: @@:
                   2595:        lea.l workarea+4(pc),a1
                   2596:        cmpa.l  a1,a0
                   2597:        beq     @f
                   2598:        pea.l   msg_fail_addr(pc)
                   2599:        move.l  a1,-(sp)
                   2600:        move.l  a0,-(sp)
                   2601:        bsr     result
                   2602:        lea.l   12(sp),sp
                   2603: @@:
                   2604:        move.l  #$55555555,d1
                   2605:        cmp.l   workarea+0,d1
                   2606:        beq     @f
                   2607:        pea.l   msg_fail(pc)
                   2608:        move.l  d1,-(sp)
                   2609:        move.l  workarea+4,-(sp)
                   2610:        bsr     result
                   2611:        lea.l   12(sp),sp
                   2612: @@:
                   2613:        tst.l   d7
                   2614:        bne     @f
                   2615:        PRINT   msg_ok
                   2616: @@:
                   2617:        rts
                   2618: 
                   2619: test_fmovem_____to_anpd:
                   2620:        PRINT   msg_fmovem_____to_anpd
                   2621:        fmove.l #$00000000,fpcr
                   2622:        fmove.l #$00000000,fpsr
                   2623:        fmove.l #$55555555,fpiar
                   2624:        lea.l   workarea+4(pc),a0
                   2625:        SET_FLINE_TRAP
                   2626:        moveq.l #0,d7
                   2627:        lea.l   @f,a3
                   2628:        .dc.w   $f220, $a000
                   2629: @@:
                   2630:        RESTORE_FLINE_TRAP
                   2631:        tst.l   d7
                   2632:        beq     @f
                   2633:        PRINT   msg_fail_trap
                   2634:        rts
                   2635: @@:
                   2636:        lea.l   workarea(pc),a1
                   2637:        cmpa.l  a1,a0
                   2638:        beq     @f
                   2639:        pea.l   msg_fail_addr(pc)
                   2640:        move.l  a1,-(sp)
                   2641:        move.l  a0,-(sp)
                   2642:        bsr     result
                   2643:        lea.l   12(sp),sp
                   2644: @@:
                   2645:        move.l  #$55555555,d1
                   2646:        cmp.l   workarea+0,d1
                   2647:        beq     @f
                   2648:        pea.l   msg_fail(pc)
                   2649:        move.l  d1,-(sp)
                   2650:        move.l  workarea+4,-(sp)
                   2651:        bsr     result
                   2652:        lea.l   12(sp),sp
                   2653: @@:
                   2654:        tst.l   d7
                   2655:        bne     @f
                   2656:        PRINT   msg_ok
                   2657: @@:
                   2658:        rts
                   2659: 
                   2660: test_fmovem_____to_imm:
                   2661:        PRINT   msg_fmovem_____to_imm
                   2662:        SET_FLINE_TRAP
                   2663:        moveq.l #0,d7
                   2664:        lea.l   @f,a3
                   2665:        .dc.w   $f23c, $a000
                   2666: @@:
                   2667:        RESTORE_FLINE_TRAP
                   2668:        tst.l   d7
                   2669:        bne     @f
                   2670:        PRINT   msg_fail_notrap
                   2671:        rts
                   2672: @@:
                   2673:        PRINT   msg_oktrap
                   2674:        rts
                   2675: 
                   2676: test_fmovem___I_to_dn:
                   2677:        PRINT   msg_fmovem___I_to_dn
                   2678:        fmove.l #$00000000,fpcr
                   2679:        fmove.l #$00000000,fpsr
                   2680:        fmove.l #$55555555,fpiar
                   2681:        SET_FLINE_TRAP
                   2682:        moveq.l #0,d7
                   2683:        lea.l   @f,a3
                   2684:        fmovem.l fpiar,d0
                   2685: @@:
                   2686:        RESTORE_FLINE_TRAP
                   2687:        tst.l   d7
                   2688:        beq     @f
                   2689:        PRINT   msg_fail_trap
                   2690:        rts
                   2691: @@:
                   2692:        move.l  #$55555555,d1
                   2693:        cmp.l   d1,d0
                   2694:        beq     @f
                   2695:        pea.l   msg_fail(pc)
                   2696:        move.l  d1,-(sp)
                   2697:        move.l  d0,-(sp)
                   2698:        bsr     result
                   2699:        lea.l   12(sp),sp
                   2700: @@:
                   2701:        tst.l   d7
                   2702:        bne     @f
                   2703:        PRINT   msg_ok
                   2704: @@:
                   2705:        rts
                   2706: 
                   2707: test_fmovem___I_to_an:
                   2708:        PRINT   msg_fmovem___I_to_an
                   2709:        fmove.l #$00000000,fpcr
                   2710:        fmove.l #$00000000,fpsr
                   2711:        fmove.l #$55555555,fpiar
                   2712:        SET_FLINE_TRAP
                   2713:        moveq.l #0,d7
                   2714:        lea.l   @f,a3
                   2715:        fmovem.l fpiar,a0
                   2716: @@:
                   2717:        RESTORE_FLINE_TRAP
                   2718:        tst.l   d7
                   2719:        beq     @f
                   2720:        PRINT   msg_fail_trap
                   2721:        rts
                   2722: @@:
                   2723:        movea.l #$55555555,a1
                   2724:        cmp.l   a1,a0
                   2725:        beq     @f
                   2726:        pea.l   msg_fail(pc)
                   2727:        move.l  a1,-(sp)
                   2728:        move.l  a0,-(sp)
                   2729:        bsr     result
                   2730:        lea.l   12(sp),sp
                   2731: @@:
                   2732:        tst.l   d7
                   2733:        bne     @f
                   2734:        PRINT   msg_ok
                   2735: @@:
                   2736:        rts
                   2737: 
                   2738: test_fmovem___I_to_anin:
                   2739:        PRINT   msg_fmovem___I_to_anin
                   2740:        fmove.l #$00000000,fpcr
                   2741:        fmove.l #$00000000,fpsr
                   2742:        fmove.l #$55555555,fpiar
                   2743:        lea.l   workarea(pc),a0
                   2744:        SET_FLINE_TRAP
                   2745:        moveq.l #0,d7
                   2746:        lea.l   @f,a3
                   2747:        fmovem.l fpiar,(a0)
                   2748: @@:
                   2749:        RESTORE_FLINE_TRAP
                   2750:        tst.l   d7
                   2751:        beq     @f
                   2752:        PRINT   msg_fail_trap
                   2753:        rts
                   2754: @@:
                   2755:        lea.l   workarea(pc),a1
                   2756:        cmpa.l  a1,a0
                   2757:        beq     @f
                   2758:        pea.l   msg_fail_addr(pc)
                   2759:        move.l  a1,-(sp)
                   2760:        move.l  a0,-(sp)
                   2761:        bsr     result
                   2762:        lea.l   12(sp),sp
                   2763: @@:
                   2764:        move.l  #$55555555,d1
                   2765:        cmp.l   workarea+0,d1
                   2766:        beq     @f
                   2767:        pea.l   msg_fail(pc)
                   2768:        move.l  d1,-(sp)
                   2769:        move.l  workarea+4,-(sp)
                   2770:        bsr     result
                   2771:        lea.l   12(sp),sp
                   2772: @@:
                   2773:        tst.l   d7
                   2774:        bne     @f
                   2775:        PRINT   msg_ok
                   2776: @@:
                   2777:        rts
                   2778: 
                   2779: test_fmovem___I_to_anpi:
                   2780:        PRINT   msg_fmovem___I_to_anpi
                   2781:        fmove.l #$00000000,fpcr
                   2782:        fmove.l #$00000000,fpsr
                   2783:        fmove.l #$55555555,fpiar
                   2784:        lea.l   workarea(pc),a0
                   2785:        SET_FLINE_TRAP
                   2786:        moveq.l #0,d7
                   2787:        lea.l   @f,a3
                   2788:        fmovem.l fpiar,(a0)+
                   2789: @@:
                   2790:        RESTORE_FLINE_TRAP
                   2791:        tst.l   d7
                   2792:        beq     @f
                   2793:        PRINT   msg_fail_trap
                   2794:        rts
                   2795: @@:
                   2796:        lea.l workarea+4(pc),a1
                   2797:        cmpa.l  a1,a0
                   2798:        beq     @f
                   2799:        pea.l   msg_fail_addr(pc)
                   2800:        move.l  a1,-(sp)
                   2801:        move.l  a0,-(sp)
                   2802:        bsr     result
                   2803:        lea.l   12(sp),sp
                   2804: @@:
                   2805:        move.l  #$55555555,d1
                   2806:        cmp.l   workarea+0,d1
                   2807:        beq     @f
                   2808:        pea.l   msg_fail(pc)
                   2809:        move.l  d1,-(sp)
                   2810:        move.l  workarea+4,-(sp)
                   2811:        bsr     result
                   2812:        lea.l   12(sp),sp
                   2813: @@:
                   2814:        tst.l   d7
                   2815:        bne     @f
                   2816:        PRINT   msg_ok
                   2817: @@:
                   2818:        rts
                   2819: 
                   2820: test_fmovem___I_to_anpd:
                   2821:        PRINT   msg_fmovem___I_to_anpd
                   2822:        fmove.l #$00000000,fpcr
                   2823:        fmove.l #$00000000,fpsr
                   2824:        fmove.l #$55555555,fpiar
                   2825:        lea.l   workarea+4(pc),a0
                   2826:        SET_FLINE_TRAP
                   2827:        moveq.l #0,d7
                   2828:        lea.l   @f,a3
                   2829:        fmovem.l fpiar,-(a0)
                   2830: @@:
                   2831:        RESTORE_FLINE_TRAP
                   2832:        tst.l   d7
                   2833:        beq     @f
                   2834:        PRINT   msg_fail_trap
                   2835:        rts
                   2836: @@:
                   2837:        lea.l   workarea(pc),a1
                   2838:        cmpa.l  a1,a0
                   2839:        beq     @f
                   2840:        pea.l   msg_fail_addr(pc)
                   2841:        move.l  a1,-(sp)
                   2842:        move.l  a0,-(sp)
                   2843:        bsr     result
                   2844:        lea.l   12(sp),sp
                   2845: @@:
                   2846:        move.l  #$55555555,d1
                   2847:        cmp.l   workarea+0,d1
                   2848:        beq     @f
                   2849:        pea.l   msg_fail(pc)
                   2850:        move.l  d1,-(sp)
                   2851:        move.l  workarea+4,-(sp)
                   2852:        bsr     result
                   2853:        lea.l   12(sp),sp
                   2854: @@:
                   2855:        tst.l   d7
                   2856:        bne     @f
                   2857:        PRINT   msg_ok
                   2858: @@:
                   2859:        rts
                   2860: 
                   2861: test_fmovem___I_to_imm:
                   2862:        PRINT   msg_fmovem___I_to_imm
                   2863:        SET_FLINE_TRAP
                   2864:        moveq.l #0,d7
                   2865:        lea.l   @f,a3
                   2866:        .dc.w   $f23c, $a400
                   2867: @@:
                   2868:        RESTORE_FLINE_TRAP
                   2869:        tst.l   d7
                   2870:        bne     @f
                   2871:        PRINT   msg_fail_notrap
                   2872:        rts
                   2873: @@:
                   2874:        PRINT   msg_oktrap
                   2875:        rts
                   2876: 
                   2877: test_fmovem__S__to_dn:
                   2878:        PRINT   msg_fmovem__S__to_dn
                   2879:        fmove.l #$00000000,fpcr
                   2880:        fmove.l #$55555555,fpsr
                   2881:        fmove.l #$00000000,fpiar
                   2882:        SET_FLINE_TRAP
                   2883:        moveq.l #0,d7
                   2884:        lea.l   @f,a3
                   2885:        fmovem.l fpsr,d0
                   2886: @@:
                   2887:        RESTORE_FLINE_TRAP
                   2888:        tst.l   d7
                   2889:        beq     @f
                   2890:        PRINT   msg_fail_trap
                   2891:        rts
                   2892: @@:
                   2893:        move.l  #$05555550,d1
                   2894:        cmp.l   d1,d0
                   2895:        beq     @f
                   2896:        pea.l   msg_fail(pc)
                   2897:        move.l  d1,-(sp)
                   2898:        move.l  d0,-(sp)
                   2899:        bsr     result
                   2900:        lea.l   12(sp),sp
                   2901: @@:
                   2902:        tst.l   d7
                   2903:        bne     @f
                   2904:        PRINT   msg_ok
                   2905: @@:
                   2906:        rts
                   2907: 
                   2908: test_fmovem__S__to_an:
                   2909:        PRINT   msg_fmovem__S__to_an
                   2910:        SET_FLINE_TRAP
                   2911:        moveq.l #0,d7
                   2912:        lea.l   @f,a3
                   2913:        .dc.w   $f208, $a800
                   2914: @@:
                   2915:        RESTORE_FLINE_TRAP
                   2916:        tst.l   d7
                   2917:        bne     @f
                   2918:        PRINT   msg_fail_notrap
                   2919:        rts
                   2920: @@:
                   2921:        PRINT   msg_oktrap
                   2922:        rts
                   2923: 
                   2924: test_fmovem__S__to_anin:
                   2925:        PRINT   msg_fmovem__S__to_anin
                   2926:        fmove.l #$00000000,fpcr
                   2927:        fmove.l #$55555555,fpsr
                   2928:        fmove.l #$00000000,fpiar
                   2929:        lea.l   workarea(pc),a0
                   2930:        SET_FLINE_TRAP
                   2931:        moveq.l #0,d7
                   2932:        lea.l   @f,a3
                   2933:        fmovem.l fpsr,(a0)
                   2934: @@:
                   2935:        RESTORE_FLINE_TRAP
                   2936:        tst.l   d7
                   2937:        beq     @f
                   2938:        PRINT   msg_fail_trap
                   2939:        rts
                   2940: @@:
                   2941:        lea.l   workarea(pc),a1
                   2942:        cmpa.l  a1,a0
                   2943:        beq     @f
                   2944:        pea.l   msg_fail_addr(pc)
                   2945:        move.l  a1,-(sp)
                   2946:        move.l  a0,-(sp)
                   2947:        bsr     result
                   2948:        lea.l   12(sp),sp
                   2949: @@:
                   2950:        move.l  #$05555550,d1
                   2951:        cmp.l   workarea+0,d1
                   2952:        beq     @f
                   2953:        pea.l   msg_fail(pc)
                   2954:        move.l  d1,-(sp)
                   2955:        move.l  workarea+4,-(sp)
                   2956:        bsr     result
                   2957:        lea.l   12(sp),sp
                   2958: @@:
                   2959:        tst.l   d7
                   2960:        bne     @f
                   2961:        PRINT   msg_ok
                   2962: @@:
                   2963:        rts
                   2964: 
                   2965: test_fmovem__S__to_anpi:
                   2966:        PRINT   msg_fmovem__S__to_anpi
                   2967:        fmove.l #$00000000,fpcr
                   2968:        fmove.l #$55555555,fpsr
                   2969:        fmove.l #$00000000,fpiar
                   2970:        lea.l   workarea(pc),a0
                   2971:        SET_FLINE_TRAP
                   2972:        moveq.l #0,d7
                   2973:        lea.l   @f,a3
                   2974:        fmovem.l fpsr,(a0)+
                   2975: @@:
                   2976:        RESTORE_FLINE_TRAP
                   2977:        tst.l   d7
                   2978:        beq     @f
                   2979:        PRINT   msg_fail_trap
                   2980:        rts
                   2981: @@:
                   2982:        lea.l workarea+4(pc),a1
                   2983:        cmpa.l  a1,a0
                   2984:        beq     @f
                   2985:        pea.l   msg_fail_addr(pc)
                   2986:        move.l  a1,-(sp)
                   2987:        move.l  a0,-(sp)
                   2988:        bsr     result
                   2989:        lea.l   12(sp),sp
                   2990: @@:
                   2991:        move.l  #$05555550,d1
                   2992:        cmp.l   workarea+0,d1
                   2993:        beq     @f
                   2994:        pea.l   msg_fail(pc)
                   2995:        move.l  d1,-(sp)
                   2996:        move.l  workarea+4,-(sp)
                   2997:        bsr     result
                   2998:        lea.l   12(sp),sp
                   2999: @@:
                   3000:        tst.l   d7
                   3001:        bne     @f
                   3002:        PRINT   msg_ok
                   3003: @@:
                   3004:        rts
                   3005: 
                   3006: test_fmovem__S__to_anpd:
                   3007:        PRINT   msg_fmovem__S__to_anpd
                   3008:        fmove.l #$00000000,fpcr
                   3009:        fmove.l #$55555555,fpsr
                   3010:        fmove.l #$00000000,fpiar
                   3011:        lea.l   workarea+4(pc),a0
                   3012:        SET_FLINE_TRAP
                   3013:        moveq.l #0,d7
                   3014:        lea.l   @f,a3
                   3015:        fmovem.l fpsr,-(a0)
                   3016: @@:
                   3017:        RESTORE_FLINE_TRAP
                   3018:        tst.l   d7
                   3019:        beq     @f
                   3020:        PRINT   msg_fail_trap
                   3021:        rts
                   3022: @@:
                   3023:        lea.l   workarea(pc),a1
                   3024:        cmpa.l  a1,a0
                   3025:        beq     @f
                   3026:        pea.l   msg_fail_addr(pc)
                   3027:        move.l  a1,-(sp)
                   3028:        move.l  a0,-(sp)
                   3029:        bsr     result
                   3030:        lea.l   12(sp),sp
                   3031: @@:
                   3032:        move.l  #$05555550,d1
                   3033:        cmp.l   workarea+0,d1
                   3034:        beq     @f
                   3035:        pea.l   msg_fail(pc)
                   3036:        move.l  d1,-(sp)
                   3037:        move.l  workarea+4,-(sp)
                   3038:        bsr     result
                   3039:        lea.l   12(sp),sp
                   3040: @@:
                   3041:        tst.l   d7
                   3042:        bne     @f
                   3043:        PRINT   msg_ok
                   3044: @@:
                   3045:        rts
                   3046: 
                   3047: test_fmovem__S__to_imm:
                   3048:        PRINT   msg_fmovem__S__to_imm
                   3049:        SET_FLINE_TRAP
                   3050:        moveq.l #0,d7
                   3051:        lea.l   @f,a3
                   3052:        .dc.w   $f23c, $a800
                   3053: @@:
                   3054:        RESTORE_FLINE_TRAP
                   3055:        tst.l   d7
                   3056:        bne     @f
                   3057:        PRINT   msg_fail_notrap
                   3058:        rts
                   3059: @@:
                   3060:        PRINT   msg_oktrap
                   3061:        rts
                   3062: 
                   3063: test_fmovem__SI_to_dn:
                   3064:        PRINT   msg_fmovem__SI_to_dn
                   3065:        SET_FLINE_TRAP
                   3066:        moveq.l #0,d7
                   3067:        lea.l   @f,a3
                   3068:        .dc.w   $f200, $ac00
                   3069: @@:
                   3070:        RESTORE_FLINE_TRAP
                   3071:        tst.l   d7
                   3072:        bne     @f
                   3073:        PRINT   msg_fail_notrap
                   3074:        rts
                   3075: @@:
                   3076:        PRINT   msg_oktrap
                   3077:        rts
                   3078: 
                   3079: test_fmovem__SI_to_an:
                   3080:        PRINT   msg_fmovem__SI_to_an
                   3081:        SET_FLINE_TRAP
                   3082:        moveq.l #0,d7
                   3083:        lea.l   @f,a3
                   3084:        .dc.w   $f208, $ac00
                   3085: @@:
                   3086:        RESTORE_FLINE_TRAP
                   3087:        tst.l   d7
                   3088:        bne     @f
                   3089:        PRINT   msg_fail_notrap
                   3090:        rts
                   3091: @@:
                   3092:        PRINT   msg_oktrap
                   3093:        rts
                   3094: 
                   3095: test_fmovem__SI_to_anin:
                   3096:        PRINT   msg_fmovem__SI_to_anin
                   3097:        fmove.l #$00000000,fpcr
                   3098:        fmove.l #$55555555,fpsr
                   3099:        fmove.l #$aaaaaaaa,fpiar
                   3100:        lea.l   workarea(pc),a0
                   3101:        SET_FLINE_TRAP
                   3102:        moveq.l #0,d7
                   3103:        lea.l   @f,a3
                   3104:        fmovem.l fpsr/fpiar,(a0)
                   3105: @@:
                   3106:        RESTORE_FLINE_TRAP
                   3107:        tst.l   d7
                   3108:        beq     @f
                   3109:        PRINT   msg_fail_trap
                   3110:        rts
                   3111: @@:
                   3112:        lea.l   workarea(pc),a1
                   3113:        cmpa.l  a1,a0
                   3114:        beq     @f
                   3115:        pea.l   msg_fail_addr(pc)
                   3116:        move.l  a1,-(sp)
                   3117:        move.l  a0,-(sp)
                   3118:        bsr     result
                   3119:        lea.l   12(sp),sp
                   3120: @@:
                   3121:        move.l  #$05555550,d1
                   3122:        cmp.l   workarea+0,d1
                   3123:        beq     @f
                   3124:        pea.l   msg_fail(pc)
                   3125:        move.l  d1,-(sp)
                   3126:        move.l  workarea+4,-(sp)
                   3127:        bsr     result
                   3128:        lea.l   12(sp),sp
                   3129: @@:
                   3130:        move.l  #$aaaaaaaa,d1
                   3131:        cmp.l   workarea+4,d1
                   3132:        beq     @f
                   3133:        pea.l   msg_fail(pc)
                   3134:        move.l  d1,-(sp)
                   3135:        move.l  workarea+8,-(sp)
                   3136:        bsr     result
                   3137:        lea.l   12(sp),sp
                   3138: @@:
                   3139:        tst.l   d7
                   3140:        bne     @f
                   3141:        PRINT   msg_ok
                   3142: @@:
                   3143:        rts
                   3144: 
                   3145: test_fmovem__SI_to_anpi:
                   3146:        PRINT   msg_fmovem__SI_to_anpi
                   3147:        fmove.l #$00000000,fpcr
                   3148:        fmove.l #$55555555,fpsr
                   3149:        fmove.l #$aaaaaaaa,fpiar
                   3150:        lea.l   workarea(pc),a0
                   3151:        SET_FLINE_TRAP
                   3152:        moveq.l #0,d7
                   3153:        lea.l   @f,a3
                   3154:        fmovem.l fpsr/fpiar,(a0)+
                   3155: @@:
                   3156:        RESTORE_FLINE_TRAP
                   3157:        tst.l   d7
                   3158:        beq     @f
                   3159:        PRINT   msg_fail_trap
                   3160:        rts
                   3161: @@:
                   3162:        lea.l workarea+8(pc),a1
                   3163:        cmpa.l  a1,a0
                   3164:        beq     @f
                   3165:        pea.l   msg_fail_addr(pc)
                   3166:        move.l  a1,-(sp)
                   3167:        move.l  a0,-(sp)
                   3168:        bsr     result
                   3169:        lea.l   12(sp),sp
                   3170: @@:
                   3171:        move.l  #$05555550,d1
                   3172:        cmp.l   workarea+0,d1
                   3173:        beq     @f
                   3174:        pea.l   msg_fail(pc)
                   3175:        move.l  d1,-(sp)
                   3176:        move.l  workarea+4,-(sp)
                   3177:        bsr     result
                   3178:        lea.l   12(sp),sp
                   3179: @@:
                   3180:        move.l  #$aaaaaaaa,d1
                   3181:        cmp.l   workarea+4,d1
                   3182:        beq     @f
                   3183:        pea.l   msg_fail(pc)
                   3184:        move.l  d1,-(sp)
                   3185:        move.l  workarea+8,-(sp)
                   3186:        bsr     result
                   3187:        lea.l   12(sp),sp
                   3188: @@:
                   3189:        tst.l   d7
                   3190:        bne     @f
                   3191:        PRINT   msg_ok
                   3192: @@:
                   3193:        rts
                   3194: 
                   3195: test_fmovem__SI_to_anpd:
                   3196:        PRINT   msg_fmovem__SI_to_anpd
                   3197:        fmove.l #$00000000,fpcr
                   3198:        fmove.l #$55555555,fpsr
                   3199:        fmove.l #$aaaaaaaa,fpiar
                   3200:        lea.l   workarea+8(pc),a0
                   3201:        SET_FLINE_TRAP
                   3202:        moveq.l #0,d7
                   3203:        lea.l   @f,a3
                   3204:        fmovem.l fpsr/fpiar,-(a0)
                   3205: @@:
                   3206:        RESTORE_FLINE_TRAP
                   3207:        tst.l   d7
                   3208:        beq     @f
                   3209:        PRINT   msg_fail_trap
                   3210:        rts
                   3211: @@:
                   3212:        lea.l   workarea(pc),a1
                   3213:        cmpa.l  a1,a0
                   3214:        beq     @f
                   3215:        pea.l   msg_fail_addr(pc)
                   3216:        move.l  a1,-(sp)
                   3217:        move.l  a0,-(sp)
                   3218:        bsr     result
                   3219:        lea.l   12(sp),sp
                   3220: @@:
                   3221:        move.l  #$05555550,d1
                   3222:        cmp.l   workarea+0,d1
                   3223:        beq     @f
                   3224:        pea.l   msg_fail(pc)
                   3225:        move.l  d1,-(sp)
                   3226:        move.l  workarea+4,-(sp)
                   3227:        bsr     result
                   3228:        lea.l   12(sp),sp
                   3229: @@:
                   3230:        move.l  #$aaaaaaaa,d1
                   3231:        cmp.l   workarea+4,d1
                   3232:        beq     @f
                   3233:        pea.l   msg_fail(pc)
                   3234:        move.l  d1,-(sp)
                   3235:        move.l  workarea+8,-(sp)
                   3236:        bsr     result
                   3237:        lea.l   12(sp),sp
                   3238: @@:
                   3239:        tst.l   d7
                   3240:        bne     @f
                   3241:        PRINT   msg_ok
                   3242: @@:
                   3243:        rts
                   3244: 
                   3245: test_fmovem__SI_to_imm:
                   3246:        PRINT   msg_fmovem__SI_to_imm
                   3247:        SET_FLINE_TRAP
                   3248:        moveq.l #0,d7
                   3249:        lea.l   @f,a3
                   3250:        .dc.w   $f23c, $ac00
                   3251: @@:
                   3252:        RESTORE_FLINE_TRAP
                   3253:        tst.l   d7
                   3254:        bne     @f
                   3255:        PRINT   msg_fail_notrap
                   3256:        rts
                   3257: @@:
                   3258:        PRINT   msg_oktrap
                   3259:        rts
                   3260: 
                   3261: test_fmovem_C___to_dn:
                   3262:        PRINT   msg_fmovem_C___to_dn
                   3263:        fmove.l #$55555555,fpcr
                   3264:        fmove.l #$00000000,fpsr
                   3265:        fmove.l #$00000000,fpiar
                   3266:        SET_FLINE_TRAP
                   3267:        moveq.l #0,d7
                   3268:        lea.l   @f,a3
                   3269:        fmovem.l fpcr,d0
                   3270: @@:
                   3271:        RESTORE_FLINE_TRAP
                   3272:        tst.l   d7
                   3273:        beq     @f
                   3274:        PRINT   msg_fail_trap
                   3275:        rts
                   3276: @@:
                   3277:        move.l  #$00005550,d1
                   3278:        cmp.l   d1,d0
                   3279:        beq     @f
                   3280:        pea.l   msg_fail(pc)
                   3281:        move.l  d1,-(sp)
                   3282:        move.l  d0,-(sp)
                   3283:        bsr     result
                   3284:        lea.l   12(sp),sp
                   3285: @@:
                   3286:        tst.l   d7
                   3287:        bne     @f
                   3288:        PRINT   msg_ok
                   3289: @@:
                   3290:        rts
                   3291: 
                   3292: test_fmovem_C___to_an:
                   3293:        PRINT   msg_fmovem_C___to_an
                   3294:        SET_FLINE_TRAP
                   3295:        moveq.l #0,d7
                   3296:        lea.l   @f,a3
                   3297:        .dc.w   $f208, $b000
                   3298: @@:
                   3299:        RESTORE_FLINE_TRAP
                   3300:        tst.l   d7
                   3301:        bne     @f
                   3302:        PRINT   msg_fail_notrap
                   3303:        rts
                   3304: @@:
                   3305:        PRINT   msg_oktrap
                   3306:        rts
                   3307: 
                   3308: test_fmovem_C___to_anin:
                   3309:        PRINT   msg_fmovem_C___to_anin
                   3310:        fmove.l #$55555555,fpcr
                   3311:        fmove.l #$00000000,fpsr
                   3312:        fmove.l #$00000000,fpiar
                   3313:        lea.l   workarea(pc),a0
                   3314:        SET_FLINE_TRAP
                   3315:        moveq.l #0,d7
                   3316:        lea.l   @f,a3
                   3317:        fmovem.l fpcr,(a0)
                   3318: @@:
                   3319:        RESTORE_FLINE_TRAP
                   3320:        tst.l   d7
                   3321:        beq     @f
                   3322:        PRINT   msg_fail_trap
                   3323:        rts
                   3324: @@:
                   3325:        lea.l   workarea(pc),a1
                   3326:        cmpa.l  a1,a0
                   3327:        beq     @f
                   3328:        pea.l   msg_fail_addr(pc)
                   3329:        move.l  a1,-(sp)
                   3330:        move.l  a0,-(sp)
                   3331:        bsr     result
                   3332:        lea.l   12(sp),sp
                   3333: @@:
                   3334:        move.l  #$00005550,d1
                   3335:        cmp.l   workarea+0,d1
                   3336:        beq     @f
                   3337:        pea.l   msg_fail(pc)
                   3338:        move.l  d1,-(sp)
                   3339:        move.l  workarea+4,-(sp)
                   3340:        bsr     result
                   3341:        lea.l   12(sp),sp
                   3342: @@:
                   3343:        tst.l   d7
                   3344:        bne     @f
                   3345:        PRINT   msg_ok
                   3346: @@:
                   3347:        rts
                   3348: 
                   3349: test_fmovem_C___to_anpi:
                   3350:        PRINT   msg_fmovem_C___to_anpi
                   3351:        fmove.l #$55555555,fpcr
                   3352:        fmove.l #$00000000,fpsr
                   3353:        fmove.l #$00000000,fpiar
                   3354:        lea.l   workarea(pc),a0
                   3355:        SET_FLINE_TRAP
                   3356:        moveq.l #0,d7
                   3357:        lea.l   @f,a3
                   3358:        fmovem.l fpcr,(a0)+
                   3359: @@:
                   3360:        RESTORE_FLINE_TRAP
                   3361:        tst.l   d7
                   3362:        beq     @f
                   3363:        PRINT   msg_fail_trap
                   3364:        rts
                   3365: @@:
                   3366:        lea.l workarea+4(pc),a1
                   3367:        cmpa.l  a1,a0
                   3368:        beq     @f
                   3369:        pea.l   msg_fail_addr(pc)
                   3370:        move.l  a1,-(sp)
                   3371:        move.l  a0,-(sp)
                   3372:        bsr     result
                   3373:        lea.l   12(sp),sp
                   3374: @@:
                   3375:        move.l  #$00005550,d1
                   3376:        cmp.l   workarea+0,d1
                   3377:        beq     @f
                   3378:        pea.l   msg_fail(pc)
                   3379:        move.l  d1,-(sp)
                   3380:        move.l  workarea+4,-(sp)
                   3381:        bsr     result
                   3382:        lea.l   12(sp),sp
                   3383: @@:
                   3384:        tst.l   d7
                   3385:        bne     @f
                   3386:        PRINT   msg_ok
                   3387: @@:
                   3388:        rts
                   3389: 
                   3390: test_fmovem_C___to_anpd:
                   3391:        PRINT   msg_fmovem_C___to_anpd
                   3392:        fmove.l #$55555555,fpcr
                   3393:        fmove.l #$00000000,fpsr
                   3394:        fmove.l #$00000000,fpiar
                   3395:        lea.l   workarea+4(pc),a0
                   3396:        SET_FLINE_TRAP
                   3397:        moveq.l #0,d7
                   3398:        lea.l   @f,a3
                   3399:        fmovem.l fpcr,-(a0)
                   3400: @@:
                   3401:        RESTORE_FLINE_TRAP
                   3402:        tst.l   d7
                   3403:        beq     @f
                   3404:        PRINT   msg_fail_trap
                   3405:        rts
                   3406: @@:
                   3407:        lea.l   workarea(pc),a1
                   3408:        cmpa.l  a1,a0
                   3409:        beq     @f
                   3410:        pea.l   msg_fail_addr(pc)
                   3411:        move.l  a1,-(sp)
                   3412:        move.l  a0,-(sp)
                   3413:        bsr     result
                   3414:        lea.l   12(sp),sp
                   3415: @@:
                   3416:        move.l  #$00005550,d1
                   3417:        cmp.l   workarea+0,d1
                   3418:        beq     @f
                   3419:        pea.l   msg_fail(pc)
                   3420:        move.l  d1,-(sp)
                   3421:        move.l  workarea+4,-(sp)
                   3422:        bsr     result
                   3423:        lea.l   12(sp),sp
                   3424: @@:
                   3425:        tst.l   d7
                   3426:        bne     @f
                   3427:        PRINT   msg_ok
                   3428: @@:
                   3429:        rts
                   3430: 
                   3431: test_fmovem_C___to_imm:
                   3432:        PRINT   msg_fmovem_C___to_imm
                   3433:        SET_FLINE_TRAP
                   3434:        moveq.l #0,d7
                   3435:        lea.l   @f,a3
                   3436:        .dc.w   $f23c, $b000
                   3437: @@:
                   3438:        RESTORE_FLINE_TRAP
                   3439:        tst.l   d7
                   3440:        bne     @f
                   3441:        PRINT   msg_fail_notrap
                   3442:        rts
                   3443: @@:
                   3444:        PRINT   msg_oktrap
                   3445:        rts
                   3446: 
                   3447: test_fmovem_C_I_to_dn:
                   3448:        PRINT   msg_fmovem_C_I_to_dn
                   3449:        SET_FLINE_TRAP
                   3450:        moveq.l #0,d7
                   3451:        lea.l   @f,a3
                   3452:        .dc.w   $f200, $b400
                   3453: @@:
                   3454:        RESTORE_FLINE_TRAP
                   3455:        tst.l   d7
                   3456:        bne     @f
                   3457:        PRINT   msg_fail_notrap
                   3458:        rts
                   3459: @@:
                   3460:        PRINT   msg_oktrap
                   3461:        rts
                   3462: 
                   3463: test_fmovem_C_I_to_an:
                   3464:        PRINT   msg_fmovem_C_I_to_an
                   3465:        SET_FLINE_TRAP
                   3466:        moveq.l #0,d7
                   3467:        lea.l   @f,a3
                   3468:        .dc.w   $f208, $b400
                   3469: @@:
                   3470:        RESTORE_FLINE_TRAP
                   3471:        tst.l   d7
                   3472:        bne     @f
                   3473:        PRINT   msg_fail_notrap
                   3474:        rts
                   3475: @@:
                   3476:        PRINT   msg_oktrap
                   3477:        rts
                   3478: 
                   3479: test_fmovem_C_I_to_anin:
                   3480:        PRINT   msg_fmovem_C_I_to_anin
                   3481:        fmove.l #$55555555,fpcr
                   3482:        fmove.l #$00000000,fpsr
                   3483:        fmove.l #$aaaaaaaa,fpiar
                   3484:        lea.l   workarea(pc),a0
                   3485:        SET_FLINE_TRAP
                   3486:        moveq.l #0,d7
                   3487:        lea.l   @f,a3
                   3488:        fmovem.l fpcr/fpiar,(a0)
                   3489: @@:
                   3490:        RESTORE_FLINE_TRAP
                   3491:        tst.l   d7
                   3492:        beq     @f
                   3493:        PRINT   msg_fail_trap
                   3494:        rts
                   3495: @@:
                   3496:        lea.l   workarea(pc),a1
                   3497:        cmpa.l  a1,a0
                   3498:        beq     @f
                   3499:        pea.l   msg_fail_addr(pc)
                   3500:        move.l  a1,-(sp)
                   3501:        move.l  a0,-(sp)
                   3502:        bsr     result
                   3503:        lea.l   12(sp),sp
                   3504: @@:
                   3505:        move.l  #$00005550,d1
                   3506:        cmp.l   workarea+0,d1
                   3507:        beq     @f
                   3508:        pea.l   msg_fail(pc)
                   3509:        move.l  d1,-(sp)
                   3510:        move.l  workarea+4,-(sp)
                   3511:        bsr     result
                   3512:        lea.l   12(sp),sp
                   3513: @@:
                   3514:        move.l  #$aaaaaaaa,d1
                   3515:        cmp.l   workarea+4,d1
                   3516:        beq     @f
                   3517:        pea.l   msg_fail(pc)
                   3518:        move.l  d1,-(sp)
                   3519:        move.l  workarea+8,-(sp)
                   3520:        bsr     result
                   3521:        lea.l   12(sp),sp
                   3522: @@:
                   3523:        tst.l   d7
                   3524:        bne     @f
                   3525:        PRINT   msg_ok
                   3526: @@:
                   3527:        rts
                   3528: 
                   3529: test_fmovem_C_I_to_anpi:
                   3530:        PRINT   msg_fmovem_C_I_to_anpi
                   3531:        fmove.l #$55555555,fpcr
                   3532:        fmove.l #$00000000,fpsr
                   3533:        fmove.l #$aaaaaaaa,fpiar
                   3534:        lea.l   workarea(pc),a0
                   3535:        SET_FLINE_TRAP
                   3536:        moveq.l #0,d7
                   3537:        lea.l   @f,a3
                   3538:        fmovem.l fpcr/fpiar,(a0)+
                   3539: @@:
                   3540:        RESTORE_FLINE_TRAP
                   3541:        tst.l   d7
                   3542:        beq     @f
                   3543:        PRINT   msg_fail_trap
                   3544:        rts
                   3545: @@:
                   3546:        lea.l workarea+8(pc),a1
                   3547:        cmpa.l  a1,a0
                   3548:        beq     @f
                   3549:        pea.l   msg_fail_addr(pc)
                   3550:        move.l  a1,-(sp)
                   3551:        move.l  a0,-(sp)
                   3552:        bsr     result
                   3553:        lea.l   12(sp),sp
                   3554: @@:
                   3555:        move.l  #$00005550,d1
                   3556:        cmp.l   workarea+0,d1
                   3557:        beq     @f
                   3558:        pea.l   msg_fail(pc)
                   3559:        move.l  d1,-(sp)
                   3560:        move.l  workarea+4,-(sp)
                   3561:        bsr     result
                   3562:        lea.l   12(sp),sp
                   3563: @@:
                   3564:        move.l  #$aaaaaaaa,d1
                   3565:        cmp.l   workarea+4,d1
                   3566:        beq     @f
                   3567:        pea.l   msg_fail(pc)
                   3568:        move.l  d1,-(sp)
                   3569:        move.l  workarea+8,-(sp)
                   3570:        bsr     result
                   3571:        lea.l   12(sp),sp
                   3572: @@:
                   3573:        tst.l   d7
                   3574:        bne     @f
                   3575:        PRINT   msg_ok
                   3576: @@:
                   3577:        rts
                   3578: 
                   3579: test_fmovem_C_I_to_anpd:
                   3580:        PRINT   msg_fmovem_C_I_to_anpd
                   3581:        fmove.l #$55555555,fpcr
                   3582:        fmove.l #$00000000,fpsr
                   3583:        fmove.l #$aaaaaaaa,fpiar
                   3584:        lea.l   workarea+8(pc),a0
                   3585:        SET_FLINE_TRAP
                   3586:        moveq.l #0,d7
                   3587:        lea.l   @f,a3
                   3588:        fmovem.l fpcr/fpiar,-(a0)
                   3589: @@:
                   3590:        RESTORE_FLINE_TRAP
                   3591:        tst.l   d7
                   3592:        beq     @f
                   3593:        PRINT   msg_fail_trap
                   3594:        rts
                   3595: @@:
                   3596:        lea.l   workarea(pc),a1
                   3597:        cmpa.l  a1,a0
                   3598:        beq     @f
                   3599:        pea.l   msg_fail_addr(pc)
                   3600:        move.l  a1,-(sp)
                   3601:        move.l  a0,-(sp)
                   3602:        bsr     result
                   3603:        lea.l   12(sp),sp
                   3604: @@:
                   3605:        move.l  #$00005550,d1
                   3606:        cmp.l   workarea+0,d1
                   3607:        beq     @f
                   3608:        pea.l   msg_fail(pc)
                   3609:        move.l  d1,-(sp)
                   3610:        move.l  workarea+4,-(sp)
                   3611:        bsr     result
                   3612:        lea.l   12(sp),sp
                   3613: @@:
                   3614:        move.l  #$aaaaaaaa,d1
                   3615:        cmp.l   workarea+4,d1
                   3616:        beq     @f
                   3617:        pea.l   msg_fail(pc)
                   3618:        move.l  d1,-(sp)
                   3619:        move.l  workarea+8,-(sp)
                   3620:        bsr     result
                   3621:        lea.l   12(sp),sp
                   3622: @@:
                   3623:        tst.l   d7
                   3624:        bne     @f
                   3625:        PRINT   msg_ok
                   3626: @@:
                   3627:        rts
                   3628: 
                   3629: test_fmovem_C_I_to_imm:
                   3630:        PRINT   msg_fmovem_C_I_to_imm
                   3631:        SET_FLINE_TRAP
                   3632:        moveq.l #0,d7
                   3633:        lea.l   @f,a3
                   3634:        .dc.w   $f23c, $b400
                   3635: @@:
                   3636:        RESTORE_FLINE_TRAP
                   3637:        tst.l   d7
                   3638:        bne     @f
                   3639:        PRINT   msg_fail_notrap
                   3640:        rts
                   3641: @@:
                   3642:        PRINT   msg_oktrap
                   3643:        rts
                   3644: 
                   3645: test_fmovem_CS__to_dn:
                   3646:        PRINT   msg_fmovem_CS__to_dn
                   3647:        SET_FLINE_TRAP
                   3648:        moveq.l #0,d7
                   3649:        lea.l   @f,a3
                   3650:        .dc.w   $f200, $b800
                   3651: @@:
                   3652:        RESTORE_FLINE_TRAP
                   3653:        tst.l   d7
                   3654:        bne     @f
                   3655:        PRINT   msg_fail_notrap
                   3656:        rts
                   3657: @@:
                   3658:        PRINT   msg_oktrap
                   3659:        rts
                   3660: 
                   3661: test_fmovem_CS__to_an:
                   3662:        PRINT   msg_fmovem_CS__to_an
                   3663:        SET_FLINE_TRAP
                   3664:        moveq.l #0,d7
                   3665:        lea.l   @f,a3
                   3666:        .dc.w   $f208, $b800
                   3667: @@:
                   3668:        RESTORE_FLINE_TRAP
                   3669:        tst.l   d7
                   3670:        bne     @f
                   3671:        PRINT   msg_fail_notrap
                   3672:        rts
                   3673: @@:
                   3674:        PRINT   msg_oktrap
                   3675:        rts
                   3676: 
                   3677: test_fmovem_CS__to_anin:
                   3678:        PRINT   msg_fmovem_CS__to_anin
                   3679:        fmove.l #$55555555,fpcr
                   3680:        fmove.l #$aaaaaaaa,fpsr
                   3681:        fmove.l #$00000000,fpiar
                   3682:        lea.l   workarea(pc),a0
                   3683:        SET_FLINE_TRAP
                   3684:        moveq.l #0,d7
                   3685:        lea.l   @f,a3
                   3686:        fmovem.l fpcr/fpsr,(a0)
                   3687: @@:
                   3688:        RESTORE_FLINE_TRAP
                   3689:        tst.l   d7
                   3690:        beq     @f
                   3691:        PRINT   msg_fail_trap
                   3692:        rts
                   3693: @@:
                   3694:        lea.l   workarea(pc),a1
                   3695:        cmpa.l  a1,a0
                   3696:        beq     @f
                   3697:        pea.l   msg_fail_addr(pc)
                   3698:        move.l  a1,-(sp)
                   3699:        move.l  a0,-(sp)
                   3700:        bsr     result
                   3701:        lea.l   12(sp),sp
                   3702: @@:
                   3703:        move.l  #$00005550,d1
                   3704:        cmp.l   workarea+0,d1
                   3705:        beq     @f
                   3706:        pea.l   msg_fail(pc)
                   3707:        move.l  d1,-(sp)
                   3708:        move.l  workarea+4,-(sp)
                   3709:        bsr     result
                   3710:        lea.l   12(sp),sp
                   3711: @@:
                   3712:        move.l  #$0aaaaaa8,d1
                   3713:        cmp.l   workarea+4,d1
                   3714:        beq     @f
                   3715:        pea.l   msg_fail(pc)
                   3716:        move.l  d1,-(sp)
                   3717:        move.l  workarea+8,-(sp)
                   3718:        bsr     result
                   3719:        lea.l   12(sp),sp
                   3720: @@:
                   3721:        tst.l   d7
                   3722:        bne     @f
                   3723:        PRINT   msg_ok
                   3724: @@:
                   3725:        rts
                   3726: 
                   3727: test_fmovem_CS__to_anpi:
                   3728:        PRINT   msg_fmovem_CS__to_anpi
                   3729:        fmove.l #$55555555,fpcr
                   3730:        fmove.l #$aaaaaaaa,fpsr
                   3731:        fmove.l #$00000000,fpiar
                   3732:        lea.l   workarea(pc),a0
                   3733:        SET_FLINE_TRAP
                   3734:        moveq.l #0,d7
                   3735:        lea.l   @f,a3
                   3736:        fmovem.l fpcr/fpsr,(a0)+
                   3737: @@:
                   3738:        RESTORE_FLINE_TRAP
                   3739:        tst.l   d7
                   3740:        beq     @f
                   3741:        PRINT   msg_fail_trap
                   3742:        rts
                   3743: @@:
                   3744:        lea.l workarea+8(pc),a1
                   3745:        cmpa.l  a1,a0
                   3746:        beq     @f
                   3747:        pea.l   msg_fail_addr(pc)
                   3748:        move.l  a1,-(sp)
                   3749:        move.l  a0,-(sp)
                   3750:        bsr     result
                   3751:        lea.l   12(sp),sp
                   3752: @@:
                   3753:        move.l  #$00005550,d1
                   3754:        cmp.l   workarea+0,d1
                   3755:        beq     @f
                   3756:        pea.l   msg_fail(pc)
                   3757:        move.l  d1,-(sp)
                   3758:        move.l  workarea+4,-(sp)
                   3759:        bsr     result
                   3760:        lea.l   12(sp),sp
                   3761: @@:
                   3762:        move.l  #$0aaaaaa8,d1
                   3763:        cmp.l   workarea+4,d1
                   3764:        beq     @f
                   3765:        pea.l   msg_fail(pc)
                   3766:        move.l  d1,-(sp)
                   3767:        move.l  workarea+8,-(sp)
                   3768:        bsr     result
                   3769:        lea.l   12(sp),sp
                   3770: @@:
                   3771:        tst.l   d7
                   3772:        bne     @f
                   3773:        PRINT   msg_ok
                   3774: @@:
                   3775:        rts
                   3776: 
                   3777: test_fmovem_CS__to_anpd:
                   3778:        PRINT   msg_fmovem_CS__to_anpd
                   3779:        fmove.l #$55555555,fpcr
                   3780:        fmove.l #$aaaaaaaa,fpsr
                   3781:        fmove.l #$00000000,fpiar
                   3782:        lea.l   workarea+8(pc),a0
                   3783:        SET_FLINE_TRAP
                   3784:        moveq.l #0,d7
                   3785:        lea.l   @f,a3
                   3786:        fmovem.l fpcr/fpsr,-(a0)
                   3787: @@:
                   3788:        RESTORE_FLINE_TRAP
                   3789:        tst.l   d7
                   3790:        beq     @f
                   3791:        PRINT   msg_fail_trap
                   3792:        rts
                   3793: @@:
                   3794:        lea.l   workarea(pc),a1
                   3795:        cmpa.l  a1,a0
                   3796:        beq     @f
                   3797:        pea.l   msg_fail_addr(pc)
                   3798:        move.l  a1,-(sp)
                   3799:        move.l  a0,-(sp)
                   3800:        bsr     result
                   3801:        lea.l   12(sp),sp
                   3802: @@:
                   3803:        move.l  #$00005550,d1
                   3804:        cmp.l   workarea+0,d1
                   3805:        beq     @f
                   3806:        pea.l   msg_fail(pc)
                   3807:        move.l  d1,-(sp)
                   3808:        move.l  workarea+4,-(sp)
                   3809:        bsr     result
                   3810:        lea.l   12(sp),sp
                   3811: @@:
                   3812:        move.l  #$0aaaaaa8,d1
                   3813:        cmp.l   workarea+4,d1
                   3814:        beq     @f
                   3815:        pea.l   msg_fail(pc)
                   3816:        move.l  d1,-(sp)
                   3817:        move.l  workarea+8,-(sp)
                   3818:        bsr     result
                   3819:        lea.l   12(sp),sp
                   3820: @@:
                   3821:        tst.l   d7
                   3822:        bne     @f
                   3823:        PRINT   msg_ok
                   3824: @@:
                   3825:        rts
                   3826: 
                   3827: test_fmovem_CS__to_imm:
                   3828:        PRINT   msg_fmovem_CS__to_imm
                   3829:        SET_FLINE_TRAP
                   3830:        moveq.l #0,d7
                   3831:        lea.l   @f,a3
                   3832:        .dc.w   $f23c, $b800
                   3833: @@:
                   3834:        RESTORE_FLINE_TRAP
                   3835:        tst.l   d7
                   3836:        bne     @f
                   3837:        PRINT   msg_fail_notrap
                   3838:        rts
                   3839: @@:
                   3840:        PRINT   msg_oktrap
                   3841:        rts
                   3842: 
                   3843: test_fmovem_CSI_to_dn:
                   3844:        PRINT   msg_fmovem_CSI_to_dn
                   3845:        SET_FLINE_TRAP
                   3846:        moveq.l #0,d7
                   3847:        lea.l   @f,a3
                   3848:        .dc.w   $f200, $bc00
                   3849: @@:
                   3850:        RESTORE_FLINE_TRAP
                   3851:        tst.l   d7
                   3852:        bne     @f
                   3853:        PRINT   msg_fail_notrap
                   3854:        rts
                   3855: @@:
                   3856:        PRINT   msg_oktrap
                   3857:        rts
                   3858: 
                   3859: test_fmovem_CSI_to_an:
                   3860:        PRINT   msg_fmovem_CSI_to_an
                   3861:        SET_FLINE_TRAP
                   3862:        moveq.l #0,d7
                   3863:        lea.l   @f,a3
                   3864:        .dc.w   $f208, $bc00
                   3865: @@:
                   3866:        RESTORE_FLINE_TRAP
                   3867:        tst.l   d7
                   3868:        bne     @f
                   3869:        PRINT   msg_fail_notrap
                   3870:        rts
                   3871: @@:
                   3872:        PRINT   msg_oktrap
                   3873:        rts
                   3874: 
                   3875: test_fmovem_CSI_to_anin:
                   3876:        PRINT   msg_fmovem_CSI_to_anin
                   3877:        fmove.l #$55555555,fpcr
                   3878:        fmove.l #$aaaaaaaa,fpsr
                   3879:        fmove.l #$33333333,fpiar
                   3880:        lea.l   workarea(pc),a0
                   3881:        SET_FLINE_TRAP
                   3882:        moveq.l #0,d7
                   3883:        lea.l   @f,a3
                   3884:        fmovem.l fpcr/fpsr/fpiar,(a0)
                   3885: @@:
                   3886:        RESTORE_FLINE_TRAP
                   3887:        tst.l   d7
                   3888:        beq     @f
                   3889:        PRINT   msg_fail_trap
                   3890:        rts
                   3891: @@:
                   3892:        lea.l   workarea(pc),a1
                   3893:        cmpa.l  a1,a0
                   3894:        beq     @f
                   3895:        pea.l   msg_fail_addr(pc)
                   3896:        move.l  a1,-(sp)
                   3897:        move.l  a0,-(sp)
                   3898:        bsr     result
                   3899:        lea.l   12(sp),sp
                   3900: @@:
                   3901:        move.l  #$00005550,d1
                   3902:        cmp.l   workarea+0,d1
                   3903:        beq     @f
                   3904:        pea.l   msg_fail(pc)
                   3905:        move.l  d1,-(sp)
                   3906:        move.l  workarea+4,-(sp)
                   3907:        bsr     result
                   3908:        lea.l   12(sp),sp
                   3909: @@:
                   3910:        move.l  #$0aaaaaa8,d1
                   3911:        cmp.l   workarea+4,d1
                   3912:        beq     @f
                   3913:        pea.l   msg_fail(pc)
                   3914:        move.l  d1,-(sp)
                   3915:        move.l  workarea+8,-(sp)
                   3916:        bsr     result
                   3917:        lea.l   12(sp),sp
                   3918: @@:
                   3919:        move.l  #$33333333,d1
                   3920:        cmp.l   workarea+8,d1
                   3921:        beq     @f
                   3922:        pea.l   msg_fail(pc)
                   3923:        move.l  d1,-(sp)
                   3924:        move.l  workarea+12,-(sp)
                   3925:        bsr     result
                   3926:        lea.l   12(sp),sp
                   3927: @@:
                   3928:        tst.l   d7
                   3929:        bne     @f
                   3930:        PRINT   msg_ok
                   3931: @@:
                   3932:        rts
                   3933: 
                   3934: test_fmovem_CSI_to_anpi:
                   3935:        PRINT   msg_fmovem_CSI_to_anpi
                   3936:        fmove.l #$55555555,fpcr
                   3937:        fmove.l #$aaaaaaaa,fpsr
                   3938:        fmove.l #$33333333,fpiar
                   3939:        lea.l   workarea(pc),a0
                   3940:        SET_FLINE_TRAP
                   3941:        moveq.l #0,d7
                   3942:        lea.l   @f,a3
                   3943:        fmovem.l fpcr/fpsr/fpiar,(a0)+
                   3944: @@:
                   3945:        RESTORE_FLINE_TRAP
                   3946:        tst.l   d7
                   3947:        beq     @f
                   3948:        PRINT   msg_fail_trap
                   3949:        rts
                   3950: @@:
                   3951:        lea.l workarea+12(pc),a1
                   3952:        cmpa.l  a1,a0
                   3953:        beq     @f
                   3954:        pea.l   msg_fail_addr(pc)
                   3955:        move.l  a1,-(sp)
                   3956:        move.l  a0,-(sp)
                   3957:        bsr     result
                   3958:        lea.l   12(sp),sp
                   3959: @@:
                   3960:        move.l  #$00005550,d1
                   3961:        cmp.l   workarea+0,d1
                   3962:        beq     @f
                   3963:        pea.l   msg_fail(pc)
                   3964:        move.l  d1,-(sp)
                   3965:        move.l  workarea+4,-(sp)
                   3966:        bsr     result
                   3967:        lea.l   12(sp),sp
                   3968: @@:
                   3969:        move.l  #$0aaaaaa8,d1
                   3970:        cmp.l   workarea+4,d1
                   3971:        beq     @f
                   3972:        pea.l   msg_fail(pc)
                   3973:        move.l  d1,-(sp)
                   3974:        move.l  workarea+8,-(sp)
                   3975:        bsr     result
                   3976:        lea.l   12(sp),sp
                   3977: @@:
                   3978:        move.l  #$33333333,d1
                   3979:        cmp.l   workarea+8,d1
                   3980:        beq     @f
                   3981:        pea.l   msg_fail(pc)
                   3982:        move.l  d1,-(sp)
                   3983:        move.l  workarea+12,-(sp)
                   3984:        bsr     result
                   3985:        lea.l   12(sp),sp
                   3986: @@:
                   3987:        tst.l   d7
                   3988:        bne     @f
                   3989:        PRINT   msg_ok
                   3990: @@:
                   3991:        rts
                   3992: 
                   3993: test_fmovem_CSI_to_anpd:
                   3994:        PRINT   msg_fmovem_CSI_to_anpd
                   3995:        fmove.l #$55555555,fpcr
                   3996:        fmove.l #$aaaaaaaa,fpsr
                   3997:        fmove.l #$33333333,fpiar
                   3998:        lea.l   workarea+12(pc),a0
                   3999:        SET_FLINE_TRAP
                   4000:        moveq.l #0,d7
                   4001:        lea.l   @f,a3
                   4002:        fmovem.l fpcr/fpsr/fpiar,-(a0)
                   4003: @@:
                   4004:        RESTORE_FLINE_TRAP
                   4005:        tst.l   d7
                   4006:        beq     @f
                   4007:        PRINT   msg_fail_trap
                   4008:        rts
                   4009: @@:
                   4010:        lea.l   workarea(pc),a1
                   4011:        cmpa.l  a1,a0
                   4012:        beq     @f
                   4013:        pea.l   msg_fail_addr(pc)
                   4014:        move.l  a1,-(sp)
                   4015:        move.l  a0,-(sp)
                   4016:        bsr     result
                   4017:        lea.l   12(sp),sp
                   4018: @@:
                   4019:        move.l  #$00005550,d1
                   4020:        cmp.l   workarea+0,d1
                   4021:        beq     @f
                   4022:        pea.l   msg_fail(pc)
                   4023:        move.l  d1,-(sp)
                   4024:        move.l  workarea+4,-(sp)
                   4025:        bsr     result
                   4026:        lea.l   12(sp),sp
                   4027: @@:
                   4028:        move.l  #$0aaaaaa8,d1
                   4029:        cmp.l   workarea+4,d1
                   4030:        beq     @f
                   4031:        pea.l   msg_fail(pc)
                   4032:        move.l  d1,-(sp)
                   4033:        move.l  workarea+8,-(sp)
                   4034:        bsr     result
                   4035:        lea.l   12(sp),sp
                   4036: @@:
                   4037:        move.l  #$33333333,d1
                   4038:        cmp.l   workarea+8,d1
                   4039:        beq     @f
                   4040:        pea.l   msg_fail(pc)
                   4041:        move.l  d1,-(sp)
                   4042:        move.l  workarea+12,-(sp)
                   4043:        bsr     result
                   4044:        lea.l   12(sp),sp
                   4045: @@:
                   4046:        tst.l   d7
                   4047:        bne     @f
                   4048:        PRINT   msg_ok
                   4049: @@:
                   4050:        rts
                   4051: 
                   4052: test_fmovem_CSI_to_imm:
                   4053:        PRINT   msg_fmovem_CSI_to_imm
                   4054:        SET_FLINE_TRAP
                   4055:        moveq.l #0,d7
                   4056:        lea.l   @f,a3
                   4057:        .dc.w   $f23c, $bc00
                   4058: @@:
                   4059:        RESTORE_FLINE_TRAP
                   4060:        tst.l   d7
                   4061:        bne     @f
                   4062:        PRINT   msg_fail_notrap
                   4063:        rts
                   4064: @@:
                   4065:        PRINT   msg_oktrap
                   4066:        rts
                   4067: 
                   4068: start:
                   4069:        clr.l   -(sp)
                   4070:        DOS     _SUPER
                   4071:        movem.l d7/a3-a5,-(sp)
                   4072:        moveq.l #$2c,d0         ; alternate of "lea.l $2c,a5"
                   4073:        move.l  d0,a5           ;
                   4074:        bsr     test_fmovem_dn_to____
                   4075:        bsr     test_fmovem_an_to____
                   4076:        bsr     test_fmovem_anin_to____
                   4077:        bsr     test_fmovem_anpi_to____
                   4078:        bsr     test_fmovem_anpd_to____
                   4079:        bsr     test_fmovem_imm_to____
                   4080:        bsr     test_fmovem_dn_to___I
                   4081:        bsr     test_fmovem_an_to___I
                   4082:        bsr     test_fmovem_anin_to___I
                   4083:        bsr     test_fmovem_anpi_to___I
                   4084:        bsr     test_fmovem_anpd_to___I
                   4085:        bsr     test_fmovem_imm_to___I
                   4086:        bsr     test_fmovem_dn_to__S_
                   4087:        bsr     test_fmovem_an_to__S_
                   4088:        bsr     test_fmovem_anin_to__S_
                   4089:        bsr     test_fmovem_anpi_to__S_
                   4090:        bsr     test_fmovem_anpd_to__S_
                   4091:        bsr     test_fmovem_imm_to__S_
                   4092:        bsr     test_fmovem_dn_to__SI
                   4093:        bsr     test_fmovem_an_to__SI
                   4094:        bsr     test_fmovem_anin_to__SI
                   4095:        bsr     test_fmovem_anpi_to__SI
                   4096:        bsr     test_fmovem_anpd_to__SI
                   4097:        bsr     test_fmovem_imm_to__SI
                   4098:        bsr     test_fmovem_dn_to_C__
                   4099:        bsr     test_fmovem_an_to_C__
                   4100:        bsr     test_fmovem_anin_to_C__
                   4101:        bsr     test_fmovem_anpi_to_C__
                   4102:        bsr     test_fmovem_anpd_to_C__
                   4103:        bsr     test_fmovem_imm_to_C__
                   4104:        bsr     test_fmovem_dn_to_C_I
                   4105:        bsr     test_fmovem_an_to_C_I
                   4106:        bsr     test_fmovem_anin_to_C_I
                   4107:        bsr     test_fmovem_anpi_to_C_I
                   4108:        bsr     test_fmovem_anpd_to_C_I
                   4109:        bsr     test_fmovem_imm_to_C_I
                   4110:        bsr     test_fmovem_dn_to_CS_
                   4111:        bsr     test_fmovem_an_to_CS_
                   4112:        bsr     test_fmovem_anin_to_CS_
                   4113:        bsr     test_fmovem_anpi_to_CS_
                   4114:        bsr     test_fmovem_anpd_to_CS_
                   4115:        bsr     test_fmovem_imm_to_CS_
                   4116:        bsr     test_fmovem_dn_to_CSI
                   4117:        bsr     test_fmovem_an_to_CSI
                   4118:        bsr     test_fmovem_anin_to_CSI
                   4119:        bsr     test_fmovem_anpi_to_CSI
                   4120:        bsr     test_fmovem_anpd_to_CSI
                   4121:        bsr     test_fmovem_imm_to_CSI
                   4122:        bsr     test_fmovem_____to_dn
                   4123:        bsr     test_fmovem_____to_an
                   4124:        bsr     test_fmovem_____to_anin
                   4125:        bsr     test_fmovem_____to_anpi
                   4126:        bsr     test_fmovem_____to_anpd
                   4127:        bsr     test_fmovem_____to_imm
                   4128:        bsr     test_fmovem___I_to_dn
                   4129:        bsr     test_fmovem___I_to_an
                   4130:        bsr     test_fmovem___I_to_anin
                   4131:        bsr     test_fmovem___I_to_anpi
                   4132:        bsr     test_fmovem___I_to_anpd
                   4133:        bsr     test_fmovem___I_to_imm
                   4134:        bsr     test_fmovem__S__to_dn
                   4135:        bsr     test_fmovem__S__to_an
                   4136:        bsr     test_fmovem__S__to_anin
                   4137:        bsr     test_fmovem__S__to_anpi
                   4138:        bsr     test_fmovem__S__to_anpd
                   4139:        bsr     test_fmovem__S__to_imm
                   4140:        bsr     test_fmovem__SI_to_dn
                   4141:        bsr     test_fmovem__SI_to_an
                   4142:        bsr     test_fmovem__SI_to_anin
                   4143:        bsr     test_fmovem__SI_to_anpi
                   4144:        bsr     test_fmovem__SI_to_anpd
                   4145:        bsr     test_fmovem__SI_to_imm
                   4146:        bsr     test_fmovem_C___to_dn
                   4147:        bsr     test_fmovem_C___to_an
                   4148:        bsr     test_fmovem_C___to_anin
                   4149:        bsr     test_fmovem_C___to_anpi
                   4150:        bsr     test_fmovem_C___to_anpd
                   4151:        bsr     test_fmovem_C___to_imm
                   4152:        bsr     test_fmovem_C_I_to_dn
                   4153:        bsr     test_fmovem_C_I_to_an
                   4154:        bsr     test_fmovem_C_I_to_anin
                   4155:        bsr     test_fmovem_C_I_to_anpi
                   4156:        bsr     test_fmovem_C_I_to_anpd
                   4157:        bsr     test_fmovem_C_I_to_imm
                   4158:        bsr     test_fmovem_CS__to_dn
                   4159:        bsr     test_fmovem_CS__to_an
                   4160:        bsr     test_fmovem_CS__to_anin
                   4161:        bsr     test_fmovem_CS__to_anpi
                   4162:        bsr     test_fmovem_CS__to_anpd
                   4163:        bsr     test_fmovem_CS__to_imm
                   4164:        bsr     test_fmovem_CSI_to_dn
                   4165:        bsr     test_fmovem_CSI_to_an
                   4166:        bsr     test_fmovem_CSI_to_anin
                   4167:        bsr     test_fmovem_CSI_to_anpi
                   4168:        bsr     test_fmovem_CSI_to_anpd
                   4169:        bsr     test_fmovem_CSI_to_imm
                   4170:        movem.l (sp)+,d7/a3-a5
                   4171:        DOS     _EXIT
                   4172: 
                   4173: ; 結果表示
                   4174: ; スタックには、メッセージ、期待値、実際の値の順で積む。
                   4175: result:
                   4176:        link    a6,#0
                   4177:        movem.l d0/a0,-(sp)
                   4178: 
                   4179:        move.l  8+8(a6),-(sp)
                   4180:        DOS     _PRINT
                   4181:        addq.l  #4,sp
                   4182: 
                   4183:        move.l  8+4(a6),d0
                   4184:        lea.l   buf(pc),a0
                   4185:        bsr     hexstr_long
                   4186:        PRINT   buf
                   4187:        PRINT   msg_but
                   4188: 
                   4189:        move.l  8+0(a6),a0
                   4190:        lea.l   buf(pc),a0
                   4191:        bsr     hexstr_long
                   4192:        PRINT   buf
                   4193:        PRINT   msg_crlf
                   4194: 
                   4195:        addq.l  #1,d7   ; errcnt
                   4196:        movem.l (sp)+,d0/a0
                   4197:        unlk    a6
                   4198:        rts
                   4199: 
                   4200: ; Fライン例外ハンドラ
                   4201: ; a3 に戻りアドレスをセットしてあること
                   4202: ; d7 を 1 にして帰る
                   4203: fline_handler:
                   4204:        moveq.l #1,d7
                   4205:        move.l  a3,2(sp)
                   4206:        rte
                   4207: 
                   4208: msg_oktrap:    .dc.b   $9,"ok(trap)",$d,$a,0, 0,0
                   4209: msg_fail_notrap:       .dc.b   $9,"FAIL: trap expected but not occured",$d,$a,0
                   4210: msg_fail_trap: .dc.b   $9,"FAIL: unexpected trap occured",$d,$a,0
                   4211: 
                   4212: msg_ok:                .dc.b   $9,"ok",$d,$a,0
                   4213: msg_fail:      .dc.b   $9,"fail",$d,$a,0
                   4214: msg_fail_cr:   .dc.b   $9,"FAIL: fpcr expects ",0
                   4215: msg_fail_sr:   .dc.b   $9,"FAIL: fpsr expects ",0
                   4216: msg_fail_ir:   .dc.b   $9,"FAIL: fpiar expects ",0
                   4217: msg_fail_addr: .dc.b   $9,"FAIL: an expects ",0
                   4218: msg_but:       .dc.b   " but ",0
                   4219: msg_crlf:      .dc.b   $d,$a,0
                   4220: 
                   4221: 
                   4222: msg_fmovem_dn_to____:  .dc.b   "fmovem_dn_to____",0
                   4223: msg_fmovem_an_to____:  .dc.b   "fmovem_an_to____",0
                   4224: msg_fmovem_anin_to____:        .dc.b   "fmovem_anin_to____",0
                   4225: msg_fmovem_anpi_to____:        .dc.b   "fmovem_anpi_to____",0
                   4226: msg_fmovem_anpd_to____:        .dc.b   "fmovem_anpd_to____",0
                   4227: msg_fmovem_imm_to____: .dc.b   "fmovem_imm_to____",0
                   4228: msg_fmovem_dn_to___I:  .dc.b   "fmovem_dn_to___I",0
                   4229: msg_fmovem_an_to___I:  .dc.b   "fmovem_an_to___I",0
                   4230: msg_fmovem_anin_to___I:        .dc.b   "fmovem_anin_to___I",0
                   4231: msg_fmovem_anpi_to___I:        .dc.b   "fmovem_anpi_to___I",0
                   4232: msg_fmovem_anpd_to___I:        .dc.b   "fmovem_anpd_to___I",0
                   4233: msg_fmovem_imm_to___I: .dc.b   "fmovem_imm_to___I",0
                   4234: msg_fmovem_dn_to__S_:  .dc.b   "fmovem_dn_to__S_",0
                   4235: msg_fmovem_an_to__S_:  .dc.b   "fmovem_an_to__S_",0
                   4236: msg_fmovem_anin_to__S_:        .dc.b   "fmovem_anin_to__S_",0
                   4237: msg_fmovem_anpi_to__S_:        .dc.b   "fmovem_anpi_to__S_",0
                   4238: msg_fmovem_anpd_to__S_:        .dc.b   "fmovem_anpd_to__S_",0
                   4239: msg_fmovem_imm_to__S_: .dc.b   "fmovem_imm_to__S_",0
                   4240: msg_fmovem_dn_to__SI:  .dc.b   "fmovem_dn_to__SI",0
                   4241: msg_fmovem_an_to__SI:  .dc.b   "fmovem_an_to__SI",0
                   4242: msg_fmovem_anin_to__SI:        .dc.b   "fmovem_anin_to__SI",0
                   4243: msg_fmovem_anpi_to__SI:        .dc.b   "fmovem_anpi_to__SI",0
                   4244: msg_fmovem_anpd_to__SI:        .dc.b   "fmovem_anpd_to__SI",0
                   4245: msg_fmovem_imm_to__SI: .dc.b   "fmovem_imm_to__SI",0
                   4246: msg_fmovem_dn_to_C__:  .dc.b   "fmovem_dn_to_C__",0
                   4247: msg_fmovem_an_to_C__:  .dc.b   "fmovem_an_to_C__",0
                   4248: msg_fmovem_anin_to_C__:        .dc.b   "fmovem_anin_to_C__",0
                   4249: msg_fmovem_anpi_to_C__:        .dc.b   "fmovem_anpi_to_C__",0
                   4250: msg_fmovem_anpd_to_C__:        .dc.b   "fmovem_anpd_to_C__",0
                   4251: msg_fmovem_imm_to_C__: .dc.b   "fmovem_imm_to_C__",0
                   4252: msg_fmovem_dn_to_C_I:  .dc.b   "fmovem_dn_to_C_I",0
                   4253: msg_fmovem_an_to_C_I:  .dc.b   "fmovem_an_to_C_I",0
                   4254: msg_fmovem_anin_to_C_I:        .dc.b   "fmovem_anin_to_C_I",0
                   4255: msg_fmovem_anpi_to_C_I:        .dc.b   "fmovem_anpi_to_C_I",0
                   4256: msg_fmovem_anpd_to_C_I:        .dc.b   "fmovem_anpd_to_C_I",0
                   4257: msg_fmovem_imm_to_C_I: .dc.b   "fmovem_imm_to_C_I",0
                   4258: msg_fmovem_dn_to_CS_:  .dc.b   "fmovem_dn_to_CS_",0
                   4259: msg_fmovem_an_to_CS_:  .dc.b   "fmovem_an_to_CS_",0
                   4260: msg_fmovem_anin_to_CS_:        .dc.b   "fmovem_anin_to_CS_",0
                   4261: msg_fmovem_anpi_to_CS_:        .dc.b   "fmovem_anpi_to_CS_",0
                   4262: msg_fmovem_anpd_to_CS_:        .dc.b   "fmovem_anpd_to_CS_",0
                   4263: msg_fmovem_imm_to_CS_: .dc.b   "fmovem_imm_to_CS_",0
                   4264: msg_fmovem_dn_to_CSI:  .dc.b   "fmovem_dn_to_CSI",0
                   4265: msg_fmovem_an_to_CSI:  .dc.b   "fmovem_an_to_CSI",0
                   4266: msg_fmovem_anin_to_CSI:        .dc.b   "fmovem_anin_to_CSI",0
                   4267: msg_fmovem_anpi_to_CSI:        .dc.b   "fmovem_anpi_to_CSI",0
                   4268: msg_fmovem_anpd_to_CSI:        .dc.b   "fmovem_anpd_to_CSI",0
                   4269: msg_fmovem_imm_to_CSI: .dc.b   "fmovem_imm_to_CSI",0
                   4270: msg_fmovem_____to_dn:  .dc.b   "fmovem_____to_dn",0
                   4271: msg_fmovem_____to_an:  .dc.b   "fmovem_____to_an",0
                   4272: msg_fmovem_____to_anin:        .dc.b   "fmovem_____to_anin",0
                   4273: msg_fmovem_____to_anpi:        .dc.b   "fmovem_____to_anpi",0
                   4274: msg_fmovem_____to_anpd:        .dc.b   "fmovem_____to_anpd",0
                   4275: msg_fmovem_____to_imm: .dc.b   "fmovem_____to_imm",0
                   4276: msg_fmovem___I_to_dn:  .dc.b   "fmovem___I_to_dn",0
                   4277: msg_fmovem___I_to_an:  .dc.b   "fmovem___I_to_an",0
                   4278: msg_fmovem___I_to_anin:        .dc.b   "fmovem___I_to_anin",0
                   4279: msg_fmovem___I_to_anpi:        .dc.b   "fmovem___I_to_anpi",0
                   4280: msg_fmovem___I_to_anpd:        .dc.b   "fmovem___I_to_anpd",0
                   4281: msg_fmovem___I_to_imm: .dc.b   "fmovem___I_to_imm",0
                   4282: msg_fmovem__S__to_dn:  .dc.b   "fmovem__S__to_dn",0
                   4283: msg_fmovem__S__to_an:  .dc.b   "fmovem__S__to_an",0
                   4284: msg_fmovem__S__to_anin:        .dc.b   "fmovem__S__to_anin",0
                   4285: msg_fmovem__S__to_anpi:        .dc.b   "fmovem__S__to_anpi",0
                   4286: msg_fmovem__S__to_anpd:        .dc.b   "fmovem__S__to_anpd",0
                   4287: msg_fmovem__S__to_imm: .dc.b   "fmovem__S__to_imm",0
                   4288: msg_fmovem__SI_to_dn:  .dc.b   "fmovem__SI_to_dn",0
                   4289: msg_fmovem__SI_to_an:  .dc.b   "fmovem__SI_to_an",0
                   4290: msg_fmovem__SI_to_anin:        .dc.b   "fmovem__SI_to_anin",0
                   4291: msg_fmovem__SI_to_anpi:        .dc.b   "fmovem__SI_to_anpi",0
                   4292: msg_fmovem__SI_to_anpd:        .dc.b   "fmovem__SI_to_anpd",0
                   4293: msg_fmovem__SI_to_imm: .dc.b   "fmovem__SI_to_imm",0
                   4294: msg_fmovem_C___to_dn:  .dc.b   "fmovem_C___to_dn",0
                   4295: msg_fmovem_C___to_an:  .dc.b   "fmovem_C___to_an",0
                   4296: msg_fmovem_C___to_anin:        .dc.b   "fmovem_C___to_anin",0
                   4297: msg_fmovem_C___to_anpi:        .dc.b   "fmovem_C___to_anpi",0
                   4298: msg_fmovem_C___to_anpd:        .dc.b   "fmovem_C___to_anpd",0
                   4299: msg_fmovem_C___to_imm: .dc.b   "fmovem_C___to_imm",0
                   4300: msg_fmovem_C_I_to_dn:  .dc.b   "fmovem_C_I_to_dn",0
                   4301: msg_fmovem_C_I_to_an:  .dc.b   "fmovem_C_I_to_an",0
                   4302: msg_fmovem_C_I_to_anin:        .dc.b   "fmovem_C_I_to_anin",0
                   4303: msg_fmovem_C_I_to_anpi:        .dc.b   "fmovem_C_I_to_anpi",0
                   4304: msg_fmovem_C_I_to_anpd:        .dc.b   "fmovem_C_I_to_anpd",0
                   4305: msg_fmovem_C_I_to_imm: .dc.b   "fmovem_C_I_to_imm",0
                   4306: msg_fmovem_CS__to_dn:  .dc.b   "fmovem_CS__to_dn",0
                   4307: msg_fmovem_CS__to_an:  .dc.b   "fmovem_CS__to_an",0
                   4308: msg_fmovem_CS__to_anin:        .dc.b   "fmovem_CS__to_anin",0
                   4309: msg_fmovem_CS__to_anpi:        .dc.b   "fmovem_CS__to_anpi",0
                   4310: msg_fmovem_CS__to_anpd:        .dc.b   "fmovem_CS__to_anpd",0
                   4311: msg_fmovem_CS__to_imm: .dc.b   "fmovem_CS__to_imm",0
                   4312: msg_fmovem_CSI_to_dn:  .dc.b   "fmovem_CSI_to_dn",0
                   4313: msg_fmovem_CSI_to_an:  .dc.b   "fmovem_CSI_to_an",0
                   4314: msg_fmovem_CSI_to_anin:        .dc.b   "fmovem_CSI_to_anin",0
                   4315: msg_fmovem_CSI_to_anpi:        .dc.b   "fmovem_CSI_to_anpi",0
                   4316: msg_fmovem_CSI_to_anpd:        .dc.b   "fmovem_CSI_to_anpd",0
                   4317: msg_fmovem_CSI_to_imm: .dc.b   "fmovem_CSI_to_imm",0
                   4318: 
                   4319:        .data
                   4320:        .even
                   4321: workarea:      .ds.b   24
                   4322: buf:           .dc.b   20
                   4323: 
                   4324:        .end    start

unix.superglobalmegacorp.com

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