Příklad 21.1. První část code 1
; PPForth code 1 ; 11111111112222222222333333333344444444445555555555666666666677777777778 ;2345678901234567890123456789012345678901234567890123456789012345678901234567890 0000= ....: 4E56 FFF4 .... .... START: LINK A6, -12 0004= 486E FFF4 PEA -12(A6) 0008= 486E FFF8 PEA -8(A6) 0004= 486E FFFC PEA -4(A6) 0010= 4E4F A08F SYSTRAP SysAppStartup 0014= 4FEF 000C LEA 12(A7), A7 0018= 4A40 TST.W D0 001A= 670E .-BEQ.S OK | | ; V případě neúspěchu pípneme a ukončíme program 001C= 1F3C 0003 | MOVE.B #3, -(A7) 0020= 4E4F A234 | SYSTRAP SndPlaySystemSound 0024= 548F | ADDQ.L #2, A7 0026= 70FF | MOVEQ #-1, D0 0028= 602A .-|-BRA.S END ;=$8056 ; Konec | | | | ; Příprava argumentů a volání procedury SBR_0058 002A= 206E FFFC OK: | `>MOVE.L -4(A6), A0 002E= 3F28 0006 | MOVE 6(A0), -(A7) 0032= 2F28 0002 | MOVE.L 2(A0), -(A7) 0036= 3F10 | MOVE (A0), -(A7) 0038= 4EBA 001E | =JSR SBR_0058 ; CALL () | 003C= 803E: 508F | ADDQ.L #8, RP 003E= 8040: 2F2E FFF4 | MOVE.L -12(FP), -(RP) 0042= 8044: 2F2E FFF8 | MOVE.L -8(FP), -(RP) 0046= 8048: 2F2E FFFC | MOVE.L -4(FP), -(RP) 004A= 804C: 4E4F A090 | SYSTRAP SysAppExit 004E= 8050: 4FEF 000C | LEA 12(RP), RP 0052= 8054: 7000 | MOVEQ #0, D0 | 0054= 8056: 4E5E END: `-->UNLK A6 ; Return to PalmOS 0056= 8058: 4E75 RTS ; % ; Subroutine $0058 0058= 4E56 0000 SBR_0058: LINK A6, #0 ;Rámec bez lokálních proměnných 005C= 4A6E 0008 TST.W 8(A6) ;ARG. 0060= 6704 .-BEQ 0066 ; $+4 0062= 4E5E | UNLK A6 0064= 4E75 | RTS 0066= 6100 001E .=`>BSR 0086 | 006A= 0004 0001 0028 00D1 | DW 4, 1, $28, $D1 0072= 000A | DW $0A 0074= 0000 0000 | DW 0, 0 0078= 00D1 7374 6172 7474 | DB 00, $D1, "startt" 0080= 75B5 | 0082= F66C | 0084= A14E | 0086= 588F `-->ADDQ.L #0, A7 0088= 47FA FF76 LEA $FF76(PC), A3 008C= 2F3C 0000 MOVE.L #0, -(A7) 0090= FFE0 0092= 4E4F A013 SYSTRAP $A013 0096= 588F ADDQ.L #0, A7 0098= 203C 0000 MOVE.L #0, D0 009C= 8000 009E= 5980 00A0= 21B3 00A2= 0800 00A4= 0080 011C= 01B4 DW $01B4 ; view 011E= 0000 DW 0 ; link 0120= 046E 6F6F 7004 DB 4, "noop", 4 0126= 3A1A MOVE.W (A2)+, D5 0128= 4EF3 5800 JMP ??? 012C= 01B9 012E= 0000 0130= 4564 6F6C 6974 0500 DB $40+5, "dolit", 5, 0 0138= 3F1A MOVE.W (A2)+, -(A7) 013A= 3A1A MOVE.W (A2)+, D5 013C= 4EF3 JMP ??? 013E= 5800 0140= 01C0 0000 0144= 4764 6F76 616C 7565 0700 DB $40+7, "dovalue", 7, 0 014F= 3F1A MOVE.W (A2)+, -(A7) 0150= 3A1A MOVE.W (A2)+, D5 0152= 4EF3 5800 JMP ??? 0156= 01C7 0000 015A= 4664 6F6C 6973 7406 DB $40+6, "dolist", 6 0162= 220A MOVE.L A2, D1 0164= 928B 0170= 01D5 0000 0174= 4664 6F64 6F65 7306 DB $40+6, "dodoes", 6 017C= 220A 928B 0190= 01E5 012E 0194= 4662 726E 6578 7406 DB $40+6, "brnext", 6 019C= 5354 4A54 01BF= 01F6 01C0= 0000 01C2= 473F 6272 616E 6368 0700 DB $40+7, "?branch", 7 C5C8= C02C C0A2 C5CC= 0666 6F72 6D68 6906 DB 6, "formhi", 5 C5D4= 3A3C 0162 C5D8= 4EB3 C5DA= 5800