PDA

View Full Version : Two Versions of MPASM in the Same Computer???



rsocor01
- 6th July 2011, 17:13
Hi all,

I have installed two versions of PBP in my computer, 2.50c and 2.60c. Whenever I need to use either one I would go to the "Compiler" tab in the "Compile and Program Options" in Microcode Studio and chose either one of them.

Now, I have some 18F4550 programs in PBP 2.50 that are working fine and I would like to keep them the way they are. They require MPASM v8.15 to assemble, which is what I have installed in my PC. I believe newer versions of MPASM won't work with PBP 2.50. Lately, I have been working in a project with a PIC16F1939 that requires PBP 2.60. The old version (v8.15) of MPASM that I have won't work with this chip. I need to have a newer version of MPASM installed.

Now comes my question. Can I install a newer version of MPASM in a different folder and use either one of them as I need them by selecting the appropiate folder in the "Assembler" tab in MCS? Does anybody else do this? Is there a workaround for this issue?

Thank you all for your help,

Robert

mackrackit
- 6th July 2011, 22:18
I have not tried it with MPLAB, but when you install select another directory, but I am saying that without knowing what MPLAB does to the registry. (make an image of your drive first, something may break..)

2.5 -- 2.6 should not be a problem if LOOP is not used as a label. Why not try making a copy of the old code and try it in 2.6?

rsocor01
- 7th July 2011, 05:08
Dave,

Thank you for your response. Yes, I'm afraid to mess my computer up if I install two versions of MPASM. In another computer I have installed PBP 2.60c and MPASM v8.60 and my 16F1939 PBP program compiles without any errors.

Now, in my other PC where I have PBP 2.60c and MPASM v8.15 I get a bunch of errors when compiling.


5746

I assume that the cause of the errors might be the older version of MPASM, but I'm not sure if this is the cause. I checked for the file 16f1939.inc and it is in the directory where it's supposed to be. Any ideas what might be wrong?

Robert

mackrackit
- 7th July 2011, 10:46
I looked at MPLAB 8.00 on one of my machines and the P16F1939.inc is not there. I skipped 8.15...

I checked for the file 16f1939.inc
I will assume that was in the PBP directory.
Goto - program files - microchip - MPASAM suite- and look for P16F1939.inc

But again I have not had a problem with old code moving forward with the exception of having a label named something that is now a reserved word (LOOP for example).

rsocor01
- 9th July 2011, 05:28
Dave,

The first error states "c:\pbp2-60\16f1939.inc 18 : Unknown processor (16F1939)", so I checked in the PBP directory. I wasn't aware that there was another 16f1939.inc file in the MPASM Suite directory.


Goto - program files - microchip - MPASAM suite- and look for P16F1939.inc

I checked in the computer with MPASM v8.15 and the file was not there. However, the file exist in the computer that has MPASM v8.60. Do you think it would work if I transfer that file over to my other computer?


But again I have not had a problem with old code moving forward with the exception of having a label named something that is now a reserved word (LOOP for example).

So, you are saying that the code with a 18F4550 and a USB interface that I wrote in PBP 2.50 and MPASM v8.15 should work in PBP 2.60? I thought that the whole USB handling changed with PBP 2.60.

Robert

mackrackit
- 9th July 2011, 10:24
So, you are saying that the code with a 18F4550 and a USB interface that I wrote in PBP 2.50 and MPASM v8.15 should work in PBP 2.60? I thought that the whole USB handling changed with PBP 2.60.

I am pretty sure even the USB is backwards compatible, but I would ask Darrel to be sure. I do not have a way to test my old USB code, my old files and hardware are at a different location. I do not remember a problem during the last upgrade, but anything I had in progress I changed to the new way because the new way works better and takes less code space.

Bruce
- 9th July 2011, 11:38
I recommend you download and install the newer version of MPLAB for full support for new PIC types.

There are more support files required than just the P16F1939.INC file.

mister_e
- 11th July 2011, 03:46
I am pretty sure even the USB is backwards compatible, but I would ask Darrel to be sure. I do not have a way to test my old USB code, my old files and hardware are at a different location. I do not remember a problem during the last upgrade, but anything I had in progress I changed to the new way because the new way works better and takes less code space.
USB in 2.60 is far different, code example for 2.50 (UsbDemo) will not work AS-IS. Darrel posted a modified version of it in USBDemo thread. There's also DT-HID (or something like that)

You can compile all previous PICBasic Pro version with the same version of MPASM. Download latest MPLAB, and set MCS to use MPASM in
Program File \Microchip\MPASM Suite
Then just specify which PBP version you want to use to compile... you're done. MPASM has next to none to do with PICBASIC PRO version.... but New PIC support.

There's nothing that bad to keep multiple version of the compiler, but not a bad idea to upgrade your previous program too... it's up to you.

mackrackit
- 11th July 2011, 12:45
MPASM has next to none to do with PICBASIC PRO version
Not exactly.
http://melabs.com/support/index.htm

rsocor01
- 11th July 2011, 12:52
Guys,

Thank you all for your comments.


Download latest MPLAB, and set MCS to use MPASM in
Program File \Microchip\MPASM Suite
Then just specify which PBP version you want to use to compile... you're done. MPASM has next to none to do with PICBASIC PRO version.... but New PIC support.

The next quote is from the MELABS webpage. http://melabs.com/support/mplab_old_versions.htm




PBP versions PRIOR TO 2.60 are compatible with MPLAB versions up to 8.15A. If you have MPLAB 8.20 or later, you will need to either downgrade to MPLAB 8.15A or upgrade to PBP 2.60 (http://melabs.com/support/upgrade.htm).


The issue is that if I upgrade MPASM in my laptop all my PBP 2.50 code (specially the USB programs) will be useless. I guess that eventually I will have to change my old code so that it is compatible with PBP 2.60.

Robert

rsocor01
- 11th July 2011, 13:47
The issue is that if I upgrade MPASM in my laptop all my PBP 2.50 code (specially the USB programs) will be useless.

Not quite right. The correct statement would be "all the PBP 2.50 USB programs will be useless".

mister_e
- 11th July 2011, 19:57
Not exactly.
http://melabs.com/support/index.htm
Dave, this is only valid if you're under MPLAB and need the sim. There's no longer .COD file support in MPLAB but the standard .COFF.

I'll double check that later, pretty sure i'm right... should compile under MCS(P).. case not... well that sucks :D

mackrackit
- 11th July 2011, 20:13
Would be nice if it does work.
I still need to check if PBP is backwards compatible for USB, I think it is... What else would the "old USB" directory be for???

mister_e
- 11th July 2011, 20:20
http://www.picbasic.co.uk/forum/showthread.php?t=5418&p=77423#post77423

mackrackit
- 11th July 2011, 20:24
Oh well, I like the new way better anyway...