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

📄 mpalc.bug

📁 PIC16CXX C语言工具
💻 BUG
字号:
Bug list for:
		PICALC 16c5x assembler Version 3.03

This file contains all known bugs for PICALC versions 3.03 Released
throgh version 4.00 Released.

Last file update:  Thursday  07 Jan 93

-------------------------------------------------------------------------

Key Words:      bug, expression

Description:    The relational expression 3==3 does NOT evaluate correctly.
		Example:
			movlw (3==3)
			movlw (3<=3)
			movlw (4!=3)

		When assembled, line 1 generates a 'Bad expression' message.
		Lines 2 and 3 evaluate correctly to logical value
		TRUE (1).

Work around:    None
Related Prob:   None

SSR#:           1021
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         Fixed 3.03.20
Severity:       Affected Code

-------------------------------------------------------------------------

Key Words:      bug, expression

Description:    The expression ~8 evaluates to 0xFF instead of 0xF7.
		Example:
			movlw ~8

		The list file displays the value as 0x0CFF.

Work around:    None
Related Prob:   None

SSR#:           1022
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         Fixed 3.03.20
Severity:       Affected Code
-------------------------------------------------------------------------

Key Words:      bug, org

Description:    The org directive allows setting an address value
		beyond the processor range.
		Example:
			list    P=16C54, F=INHX16
			org     000h
			nop
			org     1ffh
			nop
			org     200h
			nop

		Org 200h should generate an error message.

Work around:    None
Related Prob:   1054

SSR#:           1023
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         Fixed 4.00
Severity:       Affected Code
-------------------------------------------------------------------------

Key Words:      bug, res, output file

Description:    The res directive does not always produce a correct output
		file even though the listing file appears correct.
		Example:
			RESLBL  res     3
				data    0x1234
		The .lst file shows the directive res 3 and the data
		0x1234 at address RESLBL+3.  However, the .obj file
		places the data at address RESLBL, ignoring the
		res 3 directive.

Work around:    None
Related Prob:   None

SSR#:           1024
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         Unscheduled
Severity:       Affected Code
-------------------------------------------------------------------------

Key Words:      bug, INHX8S, output file format

Description:    The example below shows the .asm, .lst, & .obl files.  The
		The problem is that the addresses of the obl & obh files
		appear to be left shifted by 1 bit.
		Example:

	.ASM FILE:
			list    F=INHX8S

			org     00h
			data    1234h
			data    5678h
			data    9ABCh

			org     100h
			data    1234h
			data    5678h
			data    9ABCh

			data    1234h
			data    5678h
			data    9ABCh

			org     1f0h

			data    1234h
			data    5678h
			data    9ABCh

	.LST FILE:

			0008   0000  1234  data 1234h
			0009   0001  5678  data 5678h
			0010   0002  9ABC  data 9ABCh
			0011
			0012   0000  org   100h
			0013
			0014   0100  1234  data 1234h
			0015   0101  5678  data 5678h
			0016   0102  9ABC  data 9ABCh
			0017
			0018   0103  1234  data 1234h
			0019   0104  5678  data 5678h
			0020   0105  9ABC  data 9ABCh
			0021
			0022   0000  org   1f0h
			0023
			0024   01F0  1234  data 1234h
			0025   01F1  5678  data 5678h
			0026   01F2  9ABC  data 9ABCh

	.OBL FILE:

			:030000003478BC95
			:060200003478BC3478BC28
			:0303E0003478BCB2
			:00000001FF

Work around:    None needed
Related Prob:   None

SSR#:           1025
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         The file format is correct and complies with Intels format for
		programing two eight bit proms to form a 16 bit words.
Severity:       Affected Code
-------------------------------------------------------------------------

Key Words:      bug, res

Description:    The following erroneous code does NOT produce any error
		messages.
		Example:
			res     -1

Work around:    None
Related Prob:   None


SSR#:           1026
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         Unscheduled
Severity:       Nuisance
-------------------------------------------------------------------------

Key Words:      bug, org

Description:    The following erroneous code does NOT produce any error
		messages.

			org 01F0h
			nop
			nop
			nop
			org 01F2h

		This code should produce an error message because the second
		org references over existing code.

Work around:    None
Related Prob:   SSR# 1054

SSR#:           1027
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      ARITHOP.ASM
Status:         Fixed 4.00
Severity:       Affected Code
-------------------------------------------------------------------------

Key Words:      bug, branch, res

Description:    When using the res directive after a b (branch) instruction
		the program counter is properly advanced in the .lst file
		but not in the object code file.

		Example:
	.ASM FILE:
			BUGLBL1 b       BUGLBL2+4
			BUGLBL2
				res     4
				movlw   1
				movlw   2
				movlw   3
				movlw   4
				movlw   5

       LST FILE:

			0001
			0002
			0003               list F=INHX16
			0004
			0005   0000  0A05  BUGLBL1      b       BUGLBL2+4
			0006               BUGLBL2
			0007   0001                     res     4
			0008   0005  0C01               movlw   1
			0009   0006  0C02               movlw   2
			0010   0007  0C03               movlw   3
			0011   0008  0C04               movlw   4
			0012   0009  0C05               movlw   5

       OBJ FILE:

			:060000000A050C010C020C030C040C05A0
			:00000001FF

			If one runs the above example in PICSIM, the PC
			will jump from BUGLBL1 to the movlw 5 instruction
			instead of the intended movlw 1 instruction. Note
			the .lst file shows the correct PC values.

Work around:    None
Related Prob:   None

SSR#:           1028
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      BRANCH.ASM
Status:         Unscheduled
Severity:       Affected Code

-------------------------------------------------------------------------

Key Words:      bug, local label, macro

Description:    This macro has a local label with forward and backward
		references.  The .lst file shows the forward reference
		correctly and the label is correct.  But the backward
		reference is NOT correct and generates an erroneous error
		message as shown on line 17 below.
		Example:

	.ASM FILE:
			MAC1    macro
				local   LBL1
				movlw   1
				goto    LBL1
				movlw   2
			LBL1    movlw   3
				goto    LBL1
				endm

				MAC1

	.LST FILE:

			0005               MAC1 macro
			0006                    local   LBL1
			0007                    movlw   1
			0008                    goto    LBL1
			0009                    movlw   2
			0010               LBL1 movlw   3
			0011                    goto    LBL1
			0012                    endm
			0013
			0014                    MAC1
			0015              m
			0016   0000  0C01 m     movlw   1
			0017   0001  0A03 m     goto??00000000
			0018   0002  0C02 m     movlw   2
			0019   0003  0C03 m??00000000movlw3
			0020   0004  0A00       goto    LBL1

Work around:    An alternate approach is to use the SET directive as shown
		below:
			MAC1    macro
			;        local   LBL1
			;               comment out local directive
				movlw   1
				goto    LBL1
				movlw   2
			LBL1    set     $       ;set label = pc
				movlw   3
				goto    LBL1
				endm
Related Prob:   None
Work around:    None

SSR#:           1029
Version:        PICALC 3.03
Date:           12 Feb 92
Reported by:    Tim Colburn, Microchip Technology
Test File:      MACROS.ASM
Status:         Fixed 3.03.20
Severity:       Affected Code

-------------------------------------------------------------------------

Key Words:      bug, macro
Description:    When the following macro is called, the 'goto LBL3'
		instruction produces strange characters in the listing
		file for the label LBL3.
		Example:
	.ASM FILE:
			MAC3    macro
				local   LBL3
				goto    LBL3
			LBL3    nop
				endm

				MAC3

	.LST FILE:

			0012              m
			0013   0000  0A00 m     goto

⌨️ 快捷键说明

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