⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fft.lst

📁 FFT asm version.A zip file of all the files is provided in FFT.ZIP
💻 LST
📖 第 1 页 / 共 4 页
字号:
  0020          =2  1528    xh      equ     32
                =2  1529    
  0018          =2  1530    maxrow  equ     24
  0050          =2  1531    maxcol  equ     80
  0020          =2  1532    rscale  equ     768/maxrow
  000C          =2  1533    cscale  equ     1024/maxcol
                =2  1534    
449F            =2  1535    initgraf:
449F 120112     =2  1536            lcall   ilprt
44A2 1B0C00     =2  1537            db      esc,FF,0
44A5 22         =2  1538            ret
                =2  1539    
44A6 741F       =2  1540    ansi:   mov     a,#31
44A8 02010C     =2  1541            jmp     sndchr
                =2  1542            
44AB 741C       =2  1543    dot:    mov     a,#28
44AD 12010C     =2  1544            lcall   sndchr
44B0 7803       =2  1545    RAW:    mov     r0,#low y1+1
44B2 75A046     =2  1546            mov     p2,#high y1
44B5 0244D5     =2  1547            jmp     point
                =2  1548            
44B8 741D       =2  1549    plot:   mov     a,#29           ; vector graphics submode
44BA 12010C     =2  1550            lcall   sndchr
44BD 7807       =2  1551    line:   mov     r0,#low y2+1
44BF 75A046     =2  1552            mov     p2,#high y2
44C2 1244D5     =2  1553            call    point
44C5 0244D5     =2  1554            jmp     point
                =2  1555    ;
44C8 7800       =2  1556    savit:  mov     r0,#low x1
44CA 7904       =2  1557            mov     r1,#low x2
FFT                                                                                                           PAGE 15

44CC 7A04       =2  1558            mov     r2,#4
44CE E2         =2  1559    newxy:  movx    a,@r0           ; x2 = x1
44CF F3         =2  1560            movx    @r1,a           ; y2 = y1
44D0 08         =2  1561            inc     r0
44D1 09         =2  1562            inc     r1
44D2 DAFA       =2  1563            djnz    r2,newxy
44D4 22         =2  1564            ret             
                =2  1565    ;
44D5 1244FD     =2  1566    POINT:  lcall   getword         ; get y2/y1
44D8 7B20       =2  1567            mov     r3,#32
44DA 120127     =2  1568            lcall   dvide8
44DD EE         =2  1569            mov     a,r6            ; get highy
44DE 4420       =2  1570            orl     a,#yh
44E0 12010C     =2  1571            lcall   sndchr          ; send highy
44E3 EF         =2  1572            mov     a,r7            ; get lowy
44E4 4460       =2  1573            orl     a,#yl
44E6 12010C     =2  1574            lcall   sndchr          ; send lowy
44E9 1244FD     =2  1575            lcall   getword         ; get x2/x1
44EC 7B20       =2  1576            mov     r3,#32
44EE 120127     =2  1577            lcall   dvide8
44F1 EE         =2  1578            mov     a,r6            ; get highx
44F2 4420       =2  1579            orl     a,#xh
44F4 12010C     =2  1580            lcall   sndchr          ; send highx
44F7 EF         =2  1581            mov     a,r7            ; get lowx
44F8 4440       =2  1582            orl     a,#xl
44FA 02010C     =2  1583            ljmp    sndchr          ; send lowx
                =2  1584    ;
44FD            =2  1585    getword:
44FD E2         =2  1586            movx    a,@r0
44FE FE         =2  1587            mov     r6,a
44FF 18         =2  1588            dec     r0
4500 E2         =2  1589            movx    a,@r0
4501 FF         =2  1590            mov     r7,a
4502 18         =2  1591            dec     r0
4503 22         =2  1592            ret
                =2  1593    ;
                =2  1594    ; r2 HAS ROW, r3 HAS COL
4504            =2  1595    set_cursor:
4504 C082       =2  1596            push    dpl
4506 C083       =2  1597            push    dph
4508 C3         =2  1598            clr     c
4509 7418       =2  1599            mov     a,#maxrow       ; make rows start at top
450B 9A         =2  1600            subb    a,r2
450C 75F020     =2  1601            mov     b,#rscale
450F A4         =2  1602            mul     ab
4510 85F083     =2  1603            mov     dph,b
4513 F582       =2  1604            mov     dpl,a
                =2  1605 +1         shld    y1
                =2  1606 +1 $nolist
                =2  1619 +1 $list
4515 75A046     =2  1620 +1         MOV     P2,#HIGH y1
4518 7802       =2  1621 +1         MOV     R0,#LOW y1
451A 7191       =2  1622 +1         call    shld1
451C EB         =2  1624            mov     a,r3
451D 75F00C     =2  1625            mov     b,#cscale
4520 A4         =2  1626            mul     ab
4521 85F083     =2  1627            mov     dph,b
4524 F582       =2  1628            mov     dpl,a
FFT                                                                                                           PAGE 16

                =2  1629 +1         shld    x1
                =2  1630 +1 $nolist
                =2  1643 +1 $list
4526 75A046     =2  1644 +1         MOV     P2,#HIGH x1
4529 7800       =2  1645 +1         MOV     R0,#LOW x1
452B 7191       =2  1646 +1         call    shld1
452D 91AB       =2  1648            call    dot
452F D083       =2  1649            pop     dph
4531 D082       =2  1650            pop     dpl
4533 22         =2  1651            ret
  4534          =1  1652    lcode   equ     $
4600            =1  1653            dseg at (lcode and 0ff00h)+100h
                =1  1654    
4600            =1  1655    x1:     ds      2
4602            =1  1656    y1:     ds      2
4604            =1  1657    x2:     ds      2
4606            =1  1658    y2:     ds      2
4608            =1  1659    head:   ds      2
460A            =1  1660    sampl:  ds      2
460C            =1  1661    xlin:   ds      2
460E            =1  1662    ylin:   ds      2
4610            =1  1663    basel:  ds      2
                =1  1664    
                =1  1665    ;
                    1666    
5000                1667            cseg at tableseg
                =1  1668    $include(sqrt.dat)
5000            =1  1669    sqrt:
5000 00000000   =1  1670            db      000h,000h,000h,000h,000h,000h,001h,001h
5004 00000101   
5008 01010202   =1  1671            db      001h,001h,002h,002h,002h,003h,003h,004h
500C 02030304   
5010 04050506   =1  1672            db      004h,005h,005h,006h,006h,007h,008h,008h
5014 06070808   
5018 090A0B0B   =1  1673            db      009h,00ah,00bh,00bh,00ch,00dh,00eh,00fh
501C 0C0D0E0F   
5020 10111213   =1  1674            db      010h,011h,012h,013h,014h,015h,017h,018h
5024 14151718   
5028 191A1C1D   =1  1675            db      019h,01ah,01ch,01dh,01eh,020h,021h,023h
502C 1E202123   
5030 24262729   =1  1676            db      024h,026h,027h,029h,02ah,02ch,02eh,02fh
5034 2A2C2E2F   
5038 31333536   =1  1677            db      031h,033h,035h,036h,038h,03ah,03ch,03fh
503C 383A3C3F   
5040 40424446   =1  1678            db      040h,042h,044h,046h,048h,04ah,04dh,04fh
5044 484A4D4F   
5048 51535658   =1  1679            db      051h,053h,056h,058h,05ah,05dh,05fh,062h
504C 5A5D5F62   
5050 6467696C   =1  1680            db      064h,067h,069h,06ch,06eh,071h,074h,076h
5054 6E717476   
5058 797C7F81   =1  1681            db      079h,07ch,07fh,081h,084h,087h,08ah,08dh
505C 84878A8D   
5060 90939699   =1  1682            db      090h,093h,096h,099h,09ch,09fh,0a3h,0a6h
5064 9C9FA3A6   
5068 A9ACB0B3   =1  1683            db      0a9h,0ach,0b0h,0b3h,0b6h,0bah,0bdh,0c1h
506C B6BABDC1   
5070 C4C8CBCF   =1  1684            db      0c4h,0c8h,0cbh,0cfh,0d2h,0d6h,0dah,0ddh
5074 D2D6DADD   
FFT                                                                                                           PAGE 17

5078 E1E5E9EC   =1  1685            db      0e1h,0e5h,0e9h,0ech,0f0h,0f4h,0f8h,0fch
507C F0F4F8FC   
                =1  1686    
5080 FFFCF8F4   =1  1687            db      0ffh,0fch,0f8h,0f4h,0f0h,0ech,0e9h,0e5h
5084 F0ECE9E5   
5088 E1DDDAD6   =1  1688            db      0e1h,0ddh,0dah,0d6h,0d2h,0cfh,0cbh,0c8h
508C D2CFCBC8   
5090 C4C1BDBA   =1  1689            db      0c4h,0c1h,0bdh,0bah,0b6h,0b3h,0b0h,0ach
5094 B6B3B0AC   
5098 A9A6A39F   =1  1690            db      0a9h,0a6h,0a3h,09fh,09ch,099h,096h,093h
509C 9C999693   
50A0 908D8A87   =1  1691            db      090h,08dh,08ah,087h,084h,081h,07fh,07ch
50A4 84817F7C   
50A8 79767471   =1  1692            db      079h,076h,074h,071h,06eh,06ch,069h,067h
50AC 6E6C6967   
50B0 64625F5D   =1  1693            db      064h,062h,05fh,05dh,05ah,058h,056h,053h
50B4 5A585653   
50B8 514F4D4A   =1  1694            db      051h,04fh,04dh,04ah,048h,046h,044h,042h
50BC 48464442   
50C0 403E3C3A   =1  1695            db      040h,03eh,03ch,03ah,038h,036h,035h,033h
50C4 38363533   
50C8 312F2E2C   =1  1696            db      031h,02fh,02eh,02ch,02ah,029h,027h,026h
50CC 2A292726   
50D0 24232120   =1  1697            db      024h,023h,021h,020h,01eh,01dh,01ch,01ah
50D4 1E1D1C1A   
50D8 19181715   =1  1698            db      019h,018h,017h,015h,014h,013h,012h,011h
50DC 14131211   
50E0 100F0E0D   =1  1699            db      010h,00fh,00eh,00dh,00ch,00bh,00bh,00ah
50E4 0C0B0B0A   
50E8 09080807   =1  1700            db      009h,008h,008h,007h,006h,006h,005h,005h
50EC 06060505   
50F0 04040303   =1  1701            db      004h,004h,003h,003h,002h,002h,002h,001h
50F4 02020201   
50F8 01010100   =1  1702            db      001h,001h,001h,000h,000h,000h,000h,000h
50FC 00000000   
                =1  1703    $include(sint.dat)
5100 00030609   =1  1704    sint:   db      000h,003h,006h,009h,00ch,010h,013h,016h
5104 0C101316   
5108 191C1F22   =1  1705            db      019h,01ch,01fh,022h,025h,028h,02bh,02eh
510C 25282B2E   
5110 31333639   =1  1706            db      031h,033h,036h,039h,03ch,03fh,041h,044h
5114 3C3F4144   
5118 47494C4E   =1  1707            db      047h,049h,04ch,04eh,051h,053h,055h,058h
511C 51535558   
5120 5A5C5E60   =1  1708            db      05ah,05ch,05eh,060h,062h,064h,066h,068h
5124 62646668   
5128 6A6B6D6F   =1  1709            db      06ah,06bh,06dh,06fh,070h,071h,073h,074h
512C 70717374   
5130 75767879   =1  1710            db      075h,076h,078h,079h,07ah,07ah,07bh,07ch
5134 7A7A7B7C   
5138 7D7D7E7E   =1  1711            db      07dh,07dh,07eh,07eh,07eh,07fh,07fh,07fh
513C 7E7F7F7F   
5140 7F7F7F7F   =1  1712            db      07fh,07fh,07fh,07fh,07eh,07eh,07eh,07dh
5144 7E7E7E7D   
5148 7D7C7B7A   =1  1713            db      07dh,07ch,07bh,07ah,07ah,079h,078h,076h
514C 7A797876   
5150 75747371   =1  1714            db      075h,074h,073h,071h,070h,06fh,06dh,06bh
5154 706F6D6B   
FFT                                                                                                           PAGE 18

5158 6A686664   =1  1715            db      06ah,068h,066h,064h,062h,060h,05eh,05ch
515C 62605E5C   
5160 5A585553   =1  1716            db      05ah,058h,055h,053h,051h,04eh,04ch,049h
5164 514E4C49   
5168 4744413F   =1  1717            db      047h,044h,041h,03fh,03ch,039h,036h,033h
516C 3C393633   
5170 312E2B28   =1  1718            db      031h,02eh,02bh,028h,025h,022h,01fh,01ch
5174 25221F1C   
5178 19161310   =1  1719            db      019h,016h,013h,010h,00ch,009h,006h,003h
517C 0C090603   
5180 00FDFAF7   =1  1720            db      000h,0fdh,0fah,0f7h,0f4h,0f0h,0edh,0eah
5184 F4F0EDEA   
5188 E7E4E1DE   =1  1721            db      0e7h,0e4h,0e1h,0deh,0dbh,0d8h,0d5h,0d2h
518C DBD8D5D2   
5190 CFCDCAC7   =1  1722            db      0cfh,0cdh,0cah,0c7h,0c4h,0c1h,0bfh,0bch
5194 C4C1BFBC   
5198 B9B7B4B2   =1  1723            db      0b9h,0b7h,0b4h,0b2h,0afh,0adh,0abh,0a8h
519C AFADABA8   
51A0 A6A4A2A0   =1  1724            db      0a6h,0a4h,0a2h,0a0h,09eh,09ch,09ah,098h
51A4 9E9C9A98   
51A8 96959391   =1  1725            db      096h,095h,093h,091h,090h,08fh,08dh,08ch
51AC 908F8D8C   
51B0 8B8A8887   =1  1726            db      08bh,08ah,088h,087h,086h,086h,085h,084h
51B4 86868584   
51B8 83838282   =1  1727            db      083h,083h,082h,082h,082h,081h,081h,081h
51BC 82818181   
51C0 81818181   =1  1728            db      081h,081h,081h,081h,082h,082h,082h,083h
51C4 82828283   
51C8 83848586   =1  1729            db      083h,084h,085h,086h,086h,087h,088h,08ah
51CC 8687888A   
51D0 8B8C8D8F   =1  1730            db      08bh,08ch,08dh,08fh,090h,091h,093h,095h
51D4 90919395   
51D8 96989A9C   =1  1731            db      096h,098h,09ah,09ch,09eh,0a0h,0a2h,0a4h
51DC 9EA0A2A4   
51E0 A6A8ABAD   =1  1732            db      0a6h,0a8h,0abh,0adh,0afh,0b2h,0b4h,0b7h
51E4 AFB2B4B7   
51E8 B9BCBFC1   =1  1733            db      0b9h,0bch,0bfh,0c1h,0c4h,0c7h,0cah,0cdh
51EC C4C7CACD   
51F0 CFD2D5D8   =1  1734            db      0cfh,0d2h,0d5h,0d8h,0dbh,0deh,0e1h,0e4h
51F4 DBDEE1E4   
51F8 E7EAEDF0   =1  1735            db      0e7h,0eah,0edh,0f0h,0f4h,0f7h,0fah,0fdh
51FC F4F7FAFD   
                =1  1736            
  5000              1737    sqadr   equ     sqrt            ; square root table address
  5100              1738    stadr   equ     sint            ; sine table address
                    1739    
5200                1740            dseg at arrayseg
5200                1741    inpd:   ds      256
5300                1742    real:   ds      256
5400                1743    imag:   ds      256
5500                1744            ds      127
557F                1745    pabuf:  ds      129             ; power/amplitude spectrum
                    1746    
                    1747            end

VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -