• AVR Freaks

Hot!mpasm not supported in 64 bit OSs

Author
JorgeF
Super Member
  • Total Posts : 3345
  • Reward points : 0
  • Joined: 2011/07/09 11:56:58
  • Location: PT/EU @ Third rock from the Sun
  • Status: offline
2020/05/28 10:22:30 (permalink)
5 (1)

mpasm not supported in 64 bit OSs

Hi
 
After a while away, I'm starting a couple of new projects using the PIC16LF18324.
But it seems I'm starting on the wrong foot, or is it the wrong micro controller brand....
 
Even before I wrote the first directive, I'm greeted with "mpasm not supported on 64 bit OSs. Please consider moving your ...... project to XC8 assembler". :(
I changed it to XC8 and found no options to work with pure ASM. I didn't dig too much yet, but it seems I must write a kind of "masquerade" of ASM burried under C, I'm not even sure I can use absolute location.
 
How can I get to work as close as possible to using the old and faithful "mpasm"?
 
Context:
UBUNTU 18.04 LTS
MPLABX 5.35
XC8 2.10
 
 
Thank you
 
post edited by JorgeF - 2020/05/28 10:25:52

Best regards
Jorge
 
I'm here http://picforum.ric323.com too!
And it works better....
#1

9 Replies Related Threads

    mbrowning
    USNA79
    • Total Posts : 1768
    • Reward points : 0
    • Joined: 2005/03/16 14:32:56
    • Location: Melbourne, FL
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/28 10:44:00 (permalink)
    0
    The newest version of XC8 (not 2.10) has improved assembly support for standalone assembly development. I understand it does not include all the capabilities of MPASM and is not directly source compatible so translation is needed.
    #2
    NorthGuy
    Super Member
    • Total Posts : 6162
    • Reward points : 0
    • Joined: 2014/02/23 14:23:23
    • Location: Northern Canada
    • Status: online
    Re: mpasm not supported in 64 bit OSs 2020/05/28 12:09:14 (permalink)
    0
    For parts that are still supported by MPASM, you can use one of the older - still 32-bit - versions of MPLAB X.
     
    For newer parts, I guess the only way would be creating custom versions of support files. But there are no such parts yet.
    post edited by NorthGuy - 2020/05/28 12:11:30
    #3
    ric
    Super Member
    • Total Posts : 27595
    • Reward points : 0
    • Joined: 2003/11/07 12:41:26
    • Location: Australia, Melbourne
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/28 12:50:38 (permalink)
    0
    Also note, XC8 2.2 comes with a new DOC file for the new assembler.
    C:\Program Files\Microchip\xc8\v2.20\docs\MPLAB_XC8_PIC_Assembler_User_Guide.pdf
     

    I also post at: PicForum
    Links to useful PIC information: http://picforum.ric323.co...opic.php?f=59&t=15
    NEW USERS: Posting images, links and code - workaround for restrictions.
    To get a useful answer, always state which PIC you are using!
    #4
    JorgeF
    Super Member
    • Total Posts : 3345
    • Reward points : 0
    • Joined: 2011/07/09 11:56:58
    • Location: PT/EU @ Third rock from the Sun
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/29 11:19:08 (permalink)
    0
    Hi guys
     
    Thank you for your tips.
    After a all day reading and browsing some 5 or 6 docs and sample code, without any success.
    I'm up and running with MPLABX 4.20 and MPASM 5.77
     
    I managed to get to a point with XC8 2.20, but couldn't make it accept a user defined psect in the command line.
    A curiosity, having XC8 V2.10 installed, when I asked MPLABX to install the most recent version (project properties dialog) it installed V1,36. To get V2.20 I have to install it by hand.
     
    Best regards
    Jorge
     

    Best regards
    Jorge
     
    I'm here http://picforum.ric323.com too!
    And it works better....
    #5
    Jerry Messina
    Super Member
    • Total Posts : 516
    • Reward points : 0
    • Joined: 2003/11/07 12:35:12
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/29 11:44:43 (permalink)
    4.5 (2)
    Even though MPLABX 5.35 reports the "mpasm not supported on 64 bit OSs" warning, it includes MPASM 5.87 and seems to work ok for creating MPASM-only projects, at least on win7 x64 platform.
     
    5.40 is a different story.
     
    #6
    JorgeF
    Super Member
    • Total Posts : 3345
    • Reward points : 0
    • Joined: 2011/07/09 11:56:58
    • Location: PT/EU @ Third rock from the Sun
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/29 12:07:43 (permalink)
    0
    Hi
    I tried to build a basic ASM program, but it didn't build.
    By the error message it seems to be lacking the default makefile for it.
    Creating a makefile is not a big problem, but after all the fight with XC8, I decided not to open yet another hood.
     

    Best regards
    Jorge
     
    I'm here http://picforum.ric323.com too!
    And it works better....
    #7
    dan1138
    Super Member
    • Total Posts : 3620
    • Reward points : 0
    • Joined: 2007/02/21 23:04:16
    • Location: 0
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/29 13:09:21 (permalink)
    5 (4)
    @JorgeF,

    You are in for a lot of frustration.

    My job is to maintain several Microchip assembly language legacy projects and port them to use the current tools. (It sucks to be me right now) :)

    This is what I have learned so far:
    ;
    ; Target: PIC16LF18324
    ; File: main.S Extension must be capital "S", others (ASM, as, s, etc.) will cause problems.
    ; Date: 2020-May-29
    ; Author: dan1138
    ;
    ; Notes:
    ;
    ; At a minimum you need these PDF files:
    ;
    ; http://ww1.microchip.com/downloads/en/DeviceDoc/MPLAB%20XC8%20PIC%20Assembler%20User%27s%20Guide%2050002974A.pdf
    ; http://ww1.microchip.com/downloads/en/DeviceDoc/XC8-PIC-Assembler-UG-for-EE-50002994A.pdf
    ; http://ww1.microchip.com/downloads/en/DeviceDoc/MPASM%20to%20MPLAB%20XC8%20PIC%20Assembler%20Migration%20Guide%2050002973A.pdf
    ;
    ; MPLABX v5.40 is hostile to developing an assembly language project
    ; for 8-bit PIC targets.
    ;
    ; MPLABX v5.40 is bugged in that it loads the HEX file not the ELF file
    ; when starting the debug session. The result is there is no symbolic
    ; debug information available. On possible workaround is to import the
    ; ELF files into a "prebuild" project for MPLABX.
    ;
    ; MPLABX v5.40 is bugged in that when the pic-as(v2.20) is selected as
    ; the Compiler Tool Chain the IDE does not allow the user to make changes
    ; in the "Configuration Bits" tab of the Output view.
    ;
    ; The assembler asserts this warning:
    ;
    ; ::: warning: (1428) "-misa=std" is not supported; this feature will be ignored
    ;
    ; It is doing this because the command that invokes the assembler has selected the
    ; standard instruction set for a PIC18F target when this option is not relevant for
    ; a mid-range PIC16F controller.
    ;
    ; Configuration Bit Settings
    ;
    ; CONFIG1
    config FEXTOSC = OFF ; FEXTOSC External Oscillator mode Selection bits (Oscillator not enabled)
    config RSTOSC = HFINT32 ; Power-up default value for COSC bits (HFINTOSC with 2x PLL (32MHz))
    config CLKOUTEN = OFF ; Clock Out Enable bit (CLKOUT function is disabled; I/O or oscillator function on OSC2)
    config CSWEN = ON ; Clock Switch Enable bit (Writing to NOSC and NDIV is allowed)
    config FCMEN = OFF ; Fail-Safe Clock Monitor Enable (Fail-Safe Clock Monitor is disabled)

    ; CONFIG2
    config MCLRE = ON ; Master Clear Enable bit (MCLR/VPP pin function is MCLR; Weak pull-up enabled)
    config PWRTE = OFF ; Power-up Timer Enable bit (PWRT disabled)
    config WDTE = OFF ; Watchdog Timer Enable bits (WDT disabled; SWDTEN is ignored)
    config LPBOREN = OFF ; Low-power BOR enable bit (ULPBOR disabled)
    config BOREN = ON ; Brown-out Reset Enable bits (Brown-out Reset enabled, SBOREN bit ignored)
    config BORV = LOW ; Brown-out Reset Voltage selection bit (Brown-out voltage (Vbor) set to 2.45V)
    config PPS1WAY = OFF ; PPSLOCK bit One-Way Set Enable bit (The PPSLOCK bit can be set and cleared repeatedly (subject to the unlock sequence))
    config STVREN = ON ; Stack Overflow/Underflow Reset Enable bit (Stack Overflow or Underflow will cause a Reset)
    config DEBUG = OFF ; Debugger enable bit (Background debugger disabled)

    ; CONFIG3
    config WRT = OFF ; User NVM self-write protection bits (Write protection off)
    config LVP = ON ; Low Voltage Programming Enable bit (Low Voltage programming enabled. MCLR/VPP pin function is MCLR. MCLRE configuration bit is ignored.)

    ; CONFIG4
    config CP = OFF ; User NVM Program Memory Code Protection bit (User NVM code protection disabled)
    config CPD = OFF ; Data NVM Memory Code Protection bit (Data NVM code protection disabled)
    ;
    ; Special Function Register definitions
    ;
    #include <xc.inc>
    ;
    ; Section that linker cannot relocate
    ;
    psect ResetVec,abs,local,class=CODE,delta=2
    org 0
    ResetVector:
    PAGESEL _main
    goto _main
    ;
    ; Section that linker can relocate
    ;
    psect mainfunc,local,class=CODE,delta=2

    global _main ;
    _main:
    movf PORTA,w ; here we use a symbol defined via xc.inc
    nop
    Hang:
    goto Hang
    ;
    ; END directive so the linker knows where the entry point is
    ;
    end ResetVector
    post edited by dan1138 - 2020/05/29 13:42:29
    #8
    JorgeF
    Super Member
    • Total Posts : 3345
    • Reward points : 0
    • Joined: 2011/07/09 11:56:58
    • Location: PT/EU @ Third rock from the Sun
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/30 03:36:40 (permalink)
    0
    @Dan1138
     
    Thank you very much for the sample project.
     
    I looked at the source code and it looks much more clear and simpler than the examples from the "XC8-PIC-Assembler-UG-for-EE".
    But I couldn't build it. I didn't yet find my way around the installation/configuration of "pic-as" as a toolchain by itself. Al thought its in the system installed alongside XC8.
    But that is not a surprise, I'm still a total noob navigating the intricacies of MPLAB X.
     
    I usually like to use recent tools, as long as they don't get in the way of me doing things how I want.
    But it looks like I'm proceeding with mpasmx under MPLABX 4.20.

    Best regards
    Jorge
     
    I'm here http://picforum.ric323.com too!
    And it works better....
    #9
    dan1138
    Super Member
    • Total Posts : 3620
    • Reward points : 0
    • Joined: 2007/02/21 23:04:16
    • Location: 0
    • Status: offline
    Re: mpasm not supported in 64 bit OSs 2020/05/30 15:26:53 (permalink)
    5 (1)
    JorgeF
    ... I didn't yet find my way around the installation/configuration of "pic-as" as a toolchain by itself. ...

    I had to install it in the MPLABX IDE manually:

    #10
    Jump to:
    © 2020 APG vNext Commercial Version 4.5