View Single Post
  #1   Spotlight this post!  
Unread 17-01-2008, 19:17
itsnotabigtruck itsnotabigtruck is offline
Registered User
FRC #2002 (TETRA)
Team Role: Programmer
 
Join Date: Jan 2008
Rookie Year: 2007
Location: Tualatin, OR
Posts: 5
itsnotabigtruck is on a distinguished road
Visual Studio C18/MPLINK build rules >>>HERE<<<

I got tired of having to use MPLAB, and didn't want to install Eclipse (already had VS), so I wrote this build rules file in order to use VC to compile for the IFI RC.

This is very, very beta, and I am not responsible if it fries your robot, fries your computer, kills your dog, burns your house, etc.

Visual Studio MCC18 build rules file (right-click and choose Save Link As to download)

In order to use this:
  1. Create a Visual C++ project, preferably close to the root of the drive.
  2. Put mcc18.rules in your project directory
  3. Right-click the project in Solution Explorer and select Custom Build Rules
  4. Click Find Existing and find the mcc18.rules you put in the project directory
  5. Click No if you get asked whether you want to add the directory you chose to the build rules search path
  6. Click OK
  7. Right-click the project again and select Tool Build Order
  8. Check Microchip C18 C Compiler and Microchip MPLINK Linker, and uncheck everything else
  9. Click OK
  10. Right-click the project again and select Properties
  11. Select Microchip C18 C Compiler, then General
  12. Set these options:
    • Compiler Memory Model: Large
    • Target Processor: 18F8722
    • Additional Macros: _DONT_USE_TMR0;_LARGE_CODE;_FRC_BOARD
    • Suppress Warnings: 2066
  13. Then go to Optimization, and set more options (note that you probably don't need to turn off all of these optimizations, they're just the settings from the default code):
    • Disable Unreachable Code Removal: Yes (-Ou-)
    • Disable Tail Merging: Yes (-Ot-)
    • Disable Branch Optimization: Yes (-Ob-)
    • Disable Dead Code Removal: Yes (-Od-)
    • Disable Procedural Abstraction: Yes (-Opa-)
    • Disable Copy Propagation: Yes (-Op-)
    • Disable Redundant Store Elimination: Yes (-Or-)
  14. You might also want to set Default Char Unsigned to Yes (-k)
  15. Now go to Microchip MPLINK Linker and set these options:
    • Linker Script Search Path: $(ProjectDir) (in most cases)
    • Output HEX File Type: INHX32
    • Suppress .COD and .LST File Creation: Yes (/w)
    • Additional Input Files: 18F8722.lkr (if you're using the default IFI linker script)
  16. Now go to General under Configuration Properties
  17. Set Output Directory to Debug\bin (or somewhere else, if you prefer)
  18. Set Intermediate Directory to Debug\obj (or somewhere else, if you prefer)
  19. Set Extensions to Delete on Clean to "$(IntDir)\*;$(OutDir)\*.out;$(OutDir)\*.hex;$(Out Dir)\*.hxh;$(OutDir)\*.hxl;*.o" (no quotes)
  20. Set Configuration Type to Utility
  21. Click OK
  22. Copy all your code to the project folder
  23. Click the Show All Files button in Solution Explorer
  24. Select all your headers, C files, object libraries, and linker scripts (note: only include libraries and linker scripts for the 8722)
  25. Right-click them and select Include in Project
  26. Hit F6
  27. You're done!