006
28.04.2024, 18:33 Uhr
PIC18F2550
|
Quellcode: | AS V1.42 Beta [Bld 177] - Source File U883_MME_BAS.asm - Page 1 - 4/28/2024 16:32:5
1/ 0 : ; reass: Volker Pohlers 02.2007/07.2021 2/ 0 : 3/ 0 : 4/ 0 : ;AS-Funktionen 5/ 0 : hi function x,(x>>8)&255 6/ 0 : lo function x, x&255 7/ 0 : 8/ 0 : 9/ 0 : cpu z8601 10/ 0 : include stddefz8.inc (1) 1/ 0 : =>UNDEFINED ifndef stddefz8inc ; avoid multiple inclusion (1) 2/ 0 : =1H stddefz8inc equ 1 (1) 3/ 0 : (1) 4/ 0 : save (1) 49/ 0 : ALL restore ; re-allow listing (1) 50/ 0 : (1) 51/ 0 : [1] endif ; stddefz8inc (1) 52/ 0 : 11/ 0 : page 0 12/ 0 : 13/ 0 : org 0 14/ 0 : assume RP:0C0h ; keine Optimierung durch AS! 15/ 0 : 16/ 0 : =4H reg_04 equ 4 ; Hi TRAP 17/ 0 : =5H reg_05 equ 5 ; Lo TRAP 18/ 0 : =6H reg_06 equ 6 ; Hi Adr. Basic-Programm 19/ 0 : =7H reg_07 equ 7 ; Lo Adr. Basic-Programm 20/ 0 : =8H reg_08 equ 8 ; Hi Adr. ext. Prozedurliste 21/ 0 : =9H reg_09 equ 9 ; Lo Adr. ext. Prozedurliste 22/ 0 : =0AH reg_0A equ 0Ah 23/ 0 : =0BH reg_0B equ 0Bh 24/ 0 : =0CH reg_0C equ 0Ch 25/ 0 : =0EH reg_0E equ 0Eh ; BASIC-Fehler 26/ 0 : ; Bit0..Bit3: Verschachtelungstiefe f. GOSUB 27/ 0 : ; Bit4 = 1: GOSUB Stacküberlauf (01) 28/ 0 : ; Bit5 = 1: return without gosub (02) 29/ 0 : ; Bit6 = 1: Division durch Null (04) 30/ 0 : ; Bit7 = 1: Integerüberlauf (08) 31/ 0 : 32/ 0 : =0FH reg_0F equ 0Fh ; BASIC-Flags (aktueller State) 33/ 0 : ; Bit 0 01: 1=ELSE 34/ 0 : ; Bit 1 02: END 35/ 0 : ; Bit 2 04: CONT 36/ 0 : ; Bit 3 08: STOP, STEP 37/ 0 : ; Bit 4 10: < 38/ 0 : ; Bit 5 20: > 39/ 0 : ; Bit 6 40: = 40/ 0 : ; Bit 7 80: 41/ 0 : 42/ 0 : =7FH reg_7F equ 7Fh 43/ 0 : 44/ 0 : ;reg_20h..reg53h Variablen A..Z (Doppelregister, 16 Bit) 45/ 0 : ;ab 54h frei nutzbar, z.B. f. Stack 46/ 0 : 47/ 0 : ; ext. Routinen 48/ 0 : ;saddrh equ 0E000h ; startadr RAM s. init10 49/ 0 : ;saddr equ 812h ; startadr ROM s. init10 50/ 0 : =815H getch equ 815h 51/ 0 : =818H putch equ 818h 52/ 0 : 53/ 0 : 54/ 0 : ; Register 55/ 0 : =0FEH gpr equ 0FEh ; General purpose register bzw. Stackpointer, Highteil 56/ 0 : 57/ 0 : ;----------------------------------------------------------------------------- 58/ 0 : ; 59/ 0 : ;----------------------------------------------------------------------------- 60/ 0 : 61/ 0 : 08 00 irq0: dw 800h 62/ 2 : 08 03 irq1: dw 803h 63/ 4 : 08 06 irq2: dw 806h 64/ 6 : 08 09 irq3: dw 809h 65/ 8 : 08 0C irq4: dw 80Ch 66/ A : 08 0F irq5: dw 80Fh
|
Quellcode: | PASS 2 0000 08 00 INT0 M_0800 0002 08 03 INT1 M_0803 0004 08 06 INT2 M_0806 0006 08 09 INT3 M_0809 0008 08 0C INT4 M_080C 000A 08 0F INT5 M_080F M_000C: 31 00 SRP #00h 000E 3C 0F LD r3, #0Fh 0010 FF NOP 0011 76 E3 04 TM r3, #04h 0014 3C FF LD r3, #FFh 0016 EB 05 JR NZ, M_001Dh 0018 76 E3 04 TM r3, #04h 001B EB 20 JR NZ, M_003Dh 001D E6 F8 B6 LD P01M, #B6h 0020 E6 F7 08 LD P3M, #08h 0023 4C 08 LD r4, #08h 0025 5C 12 LD r5, #12h 0027 C2 64 LDC r6, @r4 0029 60 E6 COM r6 002B D2 64 LDC r4, @r6 002D C2 74 LDC r7, @r4 002F 60 E6 COM r6 0031 D2 64 LDC r4, @r6 0033 B2 67 XOR r6, r7 0035 31 F0 SRP #F0h 0037 ED E0 00 JP NZ, M_E000h 003A 8D 08 12 JP M_0812h 003D E6 DB E6h 003E F8 DB F8h 003F 04 DB 04h 0040 E6 DB E6h 0041 F1 DB F1h 0042 C0 DB C0h 0043 0C DB 0Ch 0044 FF DB FFh 0045 1C DB 1Ch 0046 FF DB FFh 0047 CF DB CFh 0048 56 DB 56h 0049 E3 DB E3h 004A DF DB DFh 004B 46 DB 46h 004C E3 DB E3h 004D 20 DB 20h 004E 10 DB 10h 004F E1 DB E1h 0050 10 DB 10h 0051 E0 DB E0h 0052 76 DB 76h 0053 E3 DB E3h 0054 04 DB 04h 0055 6B DB 6Bh 0056 04 DB 04h 0057 7B DB 7Bh 0058 F5 DB F5h 0059 8B DB 8Bh 005A ED DB EDh 005B E6 DB E6h 005C F8 DB F8h 005D 7F DB 7Fh 005E 8B DB 8Bh 005F FE DB FEh 0060 46 DB 46h 0061 7F DB 7Fh 0062 18 DB 18h 0063 E4 DB E4h 0064 7F DB 7Fh 0065 F8 DB F8h 0066 56 DB 56h 0067 03 DB 03h 0068 DF DB DFh 0069 76 DB 76h 006A 03 DB 03h 006B 04 DB 04h 006C 6B DB 6Bh 006D FB DB FBh 006E 56 DB 56h 006F 7F DB 7Fh 0070 F7 DB F7h 0071 46 DB 46h 0072 03 DB 03h 0073 20 DB 20h 0074 E4 DB E4h 0075 7F DB 7Fh 0076 F8 DB F8h 0077 FF DB FFh 0078 BF DB BFh M_0079: 28 E4 LD r2, r4 007B 38 E5 LD r3, r5 007D AF RET M_007E: 02 35 ADD r3, r5 0080 12 24 ADC r2, r4 0082 4B 16 JR V, M_009Ah 0084 AF RET M_0085: 22 35 SUB r3, r5 0087 32 24 SBC r2, r4 0089 4B 0F JR V, M_009Ah 008B AF RET M_008C: 76 E4 80 TM r4, #80h 008F 6B E8 JR Z, M_0079h 0091 B0 E2 CLR r2 0093 B0 E3 CLR r3 0095 8B EE JR M_0085h 0097 46 DB 46h 0098 0F DB 0Fh 0099 80 DB 80h 009A 46 DB 46h 009B 0E DB 0Eh 009C 80 DB 80h 009D AF DB AFh 009E 88 DB 88h 009F E2 DB E2h 00A0 B2 DB B2h 00A1 84 DB 84h 00A2 9C DB 9Ch 00A3 02 DB 02h 00A4 68 DB 68h 00A5 E2 DB E2h 00A6 78 DB 78h 00A7 E3 DB E3h 00A8 D6 DB D6h 00A9 00 DB 00h 00AA 8C DB 8Ch 00AB 48 DB 48h 00AC E6 DB E6h 00AD 58 DB 58h 00AE E7 DB E7h 00AF 9A DB 9Ah 00B0 F3 DB F3h 00B1 68 DB 68h 00B2 E2 DB E2h 00B3 78 DB 78h 00B4 E3 DB E3h 00B5 B0 DB B0h 00B6 E2 DB E2h 00B7 B0 DB B0h 00B8 E3 DB E3h 00B9 AF DB AFh M_00BA: D6 00 9E CALL M_009Eh 00BD BC 0F LD rB, #0Fh 00BF D0 E6 SRA r6 00C1 C0 E7 RRC r7 00C3 FB 06 JR NC, M_00CBh 00C5 02 35 ADD r3, r5 00C7 12 24 ADC r2, r4 00C9 4B CC JR V, M_0097h 00CB 10 E5 RLC r5 00CD 10 E4 RLC r4 00CF CB 04 JR NV, M_00D5h 00D1 42 67 Or r6, r7 00D3 EB C2 JR NZ, M_0097h 00D5 BA E8 DJNZ M_00BFh M_00D7: 48 E2 LD r4, r2 00D9 58 E3 LD r5, r3 00DB 10 E8 RLC r8 00DD 7B B2 JR C, M_0091h 00DF AF RET M_00E0: D6 00 9E CALL M_009Eh 00E3 9C 10 LD r9, #10h 00E5 CF RCF 00E6 B0 EA CLR rA 00E8 B0 EB CLR rB 00EA 10 E7 RLC r7 00EC 10 E6 RLC r6 00EE 10 EB RLC rB 00F0 10 EA RLC rA 00F2 7B 0A JR C, M_00FEh 00F4 A2 4A CP r4, rA 00F6 BB 0B JR UT, M_0103h 00F8 7B 04 JR C, M_00FEh 00FA A2 5B CP r5, rB 00FC BB 05 JR UT, M_0103h 00FE 22 B5 SUB rB, r5 0100 32 A4 SBC rA, r4 0102 DF SCF 0103 9A E5 DJNZ M_00EAh 0105 98 E4 LD r9, r4 0107 42 95 Or r9, r5 0109 6B 0A JR Z, M_0115h 010B 10 E7 RLC r7 010D 10 E6 RLC r6 010F 28 E6 LD r2, r6 0111 38 E7 LD r3, r7 0113 8B C2 JR M_00D7h 0115 D6 DB D6h 0116 01 DB 01h 0117 0F DB 0Fh 0118 46 DB 46h 0119 0E DB 0Eh 011A 40 DB 40h M_011B: 46 0F 80 Or r0F, #80h 011E AF RET M_011F: D6 00 E0 CALL M_00E0h 0122 88 E2 LD r8, r2 0124 28 EA LD r2, rA 0126 38 EB LD r3, rB 0128 8B AD JR M_00D7h M_012A: 42 24 Or r2, r4 012C 42 35 Or r3, r5 012E AF RET M_012F: 52 24 AND r2, r4 0131 52 35 AND r3, r5 0133 AF RET M_0134: B2 24 XOR r2, r4 0136 B2 35 XOR r3, r5 0138 AF RET M_0139: D6 00 79 CALL M_0079h 013C 60 E2 COM r2 013E 60 E3 COM r3 0140 AF RET 0141 56 DB 56h 0142 0F DB 0Fh 0143 8F DB 8Fh
|
Kaum hatt man die richtige Zip ist alles wieder OK
Volker kannst Du die fehlerhafte zip auf deiner Webseite entfernen? In der 2. steht ja alles wichtige drinn.
Danke. -- 42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest" Aktuelle Projektdokumentationen |