OpenCores
URL https://opencores.org/ocsvn/t400/t400/trunk

Subversion Repositories t400

[/] [t400/] [trunk/] [sw/] [verif/] [black_box/] [lbi_short/] [test.asm] - Diff between revs 176 and 179

Only display areas with differences | Details | Blame | View Log

Rev 176 Rev 179
        ;; *******************************************************************
        ;; *******************************************************************
        ;; $Id: test.asm,v 1.1.1.1 2006-05-06 01:56:45 arniml Exp $
        ;; $Id: test.asm 179 2009-04-01 19:48:38Z arniml $
        ;;
        ;;
        ;; Checks the LBI instruction (single byte).
        ;; Checks the LBI instruction (single byte).
        ;;
        ;;
        ;; the cpu type is defined on asl's command line
        ;; the cpu type is defined on asl's command line
        org     0x00
        org     0x00
        clra
        clra
        ;;
        ;;
        ;; initialize 4 x 8 RAM digits
        ;; initialize 4 x 8 RAM digits
        ;;
        ;;
        ;; register 0
        ;; register 0
        stii    0x0
        stii    0x0
        aisc    0x9
        aisc    0x9
        cab
        cab
        stii    0x1
        stii    0x1
        stii    0x2
        stii    0x2
        stii    0x3
        stii    0x3
        stii    0x4
        stii    0x4
        stii    0x5
        stii    0x5
        stii    0x6
        stii    0x6
        stii    0x7
        stii    0x7
        ;; register 1
        ;; register 1
        ld      0x1
        ld      0x1
        stii    0x4
        stii    0x4
        cba
        cba
        aisc    0x8
        aisc    0x8
        cab
        cab
        stii    0x5
        stii    0x5
        stii    0x6
        stii    0x6
        stii    0x7
        stii    0x7
        stii    0x8
        stii    0x8
        stii    0x9
        stii    0x9
        stii    0xa
        stii    0xa
        stii    0xb
        stii    0xb
        ;; register 2
        ;; register 2
        ld      0x3
        ld      0x3
        stii    0x8
        stii    0x8
        cba
        cba
        aisc    0x8
        aisc    0x8
        cab
        cab
        stii    0x9
        stii    0x9
        stii    0xa
        stii    0xa
        stii    0xb
        stii    0xb
        stii    0xc
        stii    0xc
        stii    0xd
        stii    0xd
        stii    0xe
        stii    0xe
        stii    0xf
        stii    0xf
        ;; register 3
        ;; register 3
        ld      0x1
        ld      0x1
        stii    0xc
        stii    0xc
        cba
        cba
        aisc    0x8
        aisc    0x8
        cab
        cab
        stii    0xd
        stii    0xd
        stii    0xe
        stii    0xe
        stii    0xf
        stii    0xf
        stii    0x0
        stii    0x0
        stii    0x1
        stii    0x1
        stii    0x2
        stii    0x2
        stii    0x3
        stii    0x3
        jmp     test_code
        jmp     test_code
        ;; subroutine page 2
        ;; subroutine page 2
        org     0x80
        org     0x80
lbi_call_reg0:
lbi_call_reg0:
        lbi     0, 0
        lbi     0, 0
        lbi     0, 9
        lbi     0, 9
        lbi     0, 10
        lbi     0, 10
        lbi     0, 11
        lbi     0, 11
        lbi     0, 12
        lbi     0, 12
        lbi     0, 13
        lbi     0, 13
        lbi     0, 14
        lbi     0, 14
        lbi     0, 15
        lbi     0, 15
        ret
        ret
lbi_call_reg1:
lbi_call_reg1:
        lbi     1, 0
        lbi     1, 0
        lbi     1, 9
        lbi     1, 9
        lbi     1, 10
        lbi     1, 10
        lbi     1, 11
        lbi     1, 11
        lbi     1, 12
        lbi     1, 12
        lbi     1, 13
        lbi     1, 13
        lbi     1, 14
        lbi     1, 14
        lbi     1, 15
        lbi     1, 15
        ret
        ret
lbi_call_reg2:
lbi_call_reg2:
        lbi     2, 0
        lbi     2, 0
        lbi     2, 9
        lbi     2, 9
        lbi     2, 10
        lbi     2, 10
        lbi     2, 11
        lbi     2, 11
        lbi     2, 12
        lbi     2, 12
        lbi     2, 13
        lbi     2, 13
        lbi     2, 14
        lbi     2, 14
        lbi     2, 15
        lbi     2, 15
        ret
        ret
lbi_call_reg3:
lbi_call_reg3:
        lbi     3, 0
        lbi     3, 0
        lbi     3, 9
        lbi     3, 9
        lbi     3, 10
        lbi     3, 10
        lbi     3, 11
        lbi     3, 11
        lbi     3, 12
        lbi     3, 12
        lbi     3, 13
        lbi     3, 13
        lbi     3, 14
        lbi     3, 14
        lbi     3, 15
        lbi     3, 15
        ret
        ret
        org     0x100
        org     0x100
        ;;
        ;;
        ;; now test each register digit
        ;; now test each register digit
        ;;
        ;;
test_code:
test_code:
        ;; register 0
        ;; register 0
        ;; digit 0
        ;; digit 0
        clra
        clra
        jsrp    lbi_call_reg0 + 0
        jsrp    lbi_call_reg0 + 0
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 9
        ;; digit 9
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 1
        jsrp    lbi_call_reg0 + 1
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 10
        ;; digit 10
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 2
        jsrp    lbi_call_reg0 + 2
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 11
        ;; digit 11
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 3
        jsrp    lbi_call_reg0 + 3
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 12
        ;; digit 12
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 4
        jsrp    lbi_call_reg0 + 4
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 13
        ;; digit 13
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 5
        jsrp    lbi_call_reg0 + 5
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 14
        ;; digit 14
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 6
        jsrp    lbi_call_reg0 + 6
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 15
        ;; digit 15
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg0 + 7
        jsrp    lbi_call_reg0 + 7
        ske
        ske
        jmp     fail
        jmp     fail
        ;; register 1
        ;; register 1
        ;; digit 0
        ;; digit 0
        clra
        clra
        aisc     0x4
        aisc     0x4
        jsrp    lbi_call_reg1 + 0
        jsrp    lbi_call_reg1 + 0
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 9
        ;; digit 9
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 1
        jsrp    lbi_call_reg1 + 1
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 10
        ;; digit 10
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 2
        jsrp    lbi_call_reg1 + 2
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 11
        ;; digit 11
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 3
        jsrp    lbi_call_reg1 + 3
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 12
        ;; digit 12
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 4
        jsrp    lbi_call_reg1 + 4
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 13
        ;; digit 13
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 5
        jsrp    lbi_call_reg1 + 5
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 14
        ;; digit 14
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 6
        jsrp    lbi_call_reg1 + 6
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 15
        ;; digit 15
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg1 + 7
        jsrp    lbi_call_reg1 + 7
        ske
        ske
        jmp     fail
        jmp     fail
        ;; register 2
        ;; register 2
        ;; digit 0
        ;; digit 0
        clra
        clra
        aisc    0x8
        aisc    0x8
        jsrp    lbi_call_reg2 + 0
        jsrp    lbi_call_reg2 + 0
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 9
        ;; digit 9
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 1
        jsrp    lbi_call_reg2 + 1
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 10
        ;; digit 10
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 2
        jsrp    lbi_call_reg2 + 2
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 11
        ;; digit 11
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 3
        jsrp    lbi_call_reg2 + 3
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 12
        ;; digit 12
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 4
        jsrp    lbi_call_reg2 + 4
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 13
        ;; digit 13
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 5
        jsrp    lbi_call_reg2 + 5
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 14
        ;; digit 14
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 6
        jsrp    lbi_call_reg2 + 6
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 15
        ;; digit 15
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg2 + 7
        jsrp    lbi_call_reg2 + 7
        ske
        ske
        jmp     fail
        jmp     fail
        ;; register 3
        ;; register 3
        ;; digit 0
        ;; digit 0
        clra
        clra
        aisc    0xc
        aisc    0xc
        jsrp    lbi_call_reg3 + 0
        jsrp    lbi_call_reg3 + 0
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 9
        ;; digit 9
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg3 + 1
        jsrp    lbi_call_reg3 + 1
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 10
        ;; digit 10
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg3 + 2
        jsrp    lbi_call_reg3 + 2
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 11
        ;; digit 11
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg3 + 3
        jsrp    lbi_call_reg3 + 3
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 12
        ;; digit 12
        aisc    0x1
        aisc    0x1
        nop
        nop
        jsrp    lbi_call_reg3 + 4
        jsrp    lbi_call_reg3 + 4
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 13
        ;; digit 13
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg3 + 5
        jsrp    lbi_call_reg3 + 5
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 14
        ;; digit 14
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg3 + 6
        jsrp    lbi_call_reg3 + 6
        ske
        ske
        jmp     fail
        jmp     fail
        ;; digit 15
        ;; digit 15
        aisc    0x1
        aisc    0x1
        jsrp    lbi_call_reg3 + 7
        jsrp    lbi_call_reg3 + 7
        ske
        ske
        jmp     fail
        jmp     fail
        jmp     pass
        jmp     pass
        include "pass_fail.asm"
        include "pass_fail.asm"
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.