mikroC for 8051 0.98 beta

Discuss about beta versions of mikroC compiler.
Author
Message
User avatar
zristic
mikroElektronika team
Posts: 6608
Joined: 03 Aug 2004 12:59
Contact:

mikroC for 8051 0.98 beta

#1 Post by zristic » 05 Feb 2008 15:54

mikroC for 8051 0.98 beta has been released.

All beta testers are welcome to participate!

The importance of this release is tremendeous. All our compilers will look like this in the future, it is, therefore, important that you give a good test to IDE, compiler, examples and whatever comes to your mind.

The most important features are: New IDE, Command Line interface for compiler, code folding.

Release features:
  • v.0.98 beta (2008-02-04)
    ------------------------
    - IDE
    - New: Customizable new look
    - New: Layout manager
    - New: Project manager
    - New: Library manager
    - New: Drag and drop files to editor
    - New: Code folding feature
    - New: Autocorrect notification
    - New: Declaration syntax checker
    - New: Advanced bookmark editor
    - New: Macro manager
    - New: New project wizard
    - New: Bug report tool
    - New: Templates for AutoComplete
    - Improved: Brackets painter
    - Improved: Code explorer
    - Improved: Docking manager
    - Improved: Messages window with filtering
    - Improved: Grep search feature
    - Improved: Code Assistant, Parameter Assistant

    - Compiler
    - New: Command line interface
    - New: Bit, sbit variables support
    - New: Small, compact and large memory model support
    - New: Efficient file format for libraries (.MCL)
    - New: Additional set of keywords to fasciliate 8051 programming:
    code pdata sbit
    data small bit
    idata compact sfr
    bdata large ilevel
    xdata at
    - New: PeepHole optimisation added to optimizer
    - New: Compiler front end redesigned for faster compilation
    - Improved: Memory management, initialisation sections introduced
    - Improved: Fast and efficient linker algorithm
    - Improved: Fast Hex generator
    - Improved: Fast loading and writing compiled libraries (.MCL)
    - Improved: Messaging system
    - Improved: Output options control
    - Improved: Libraries redesigned and rewritten to meets demands of 8051 architecture
    - Improved: Fast and small executable code
    - Improved: Optimizer rewritten to meet demands of 8051 architecture
Known Issues:
  • - Clock window does not correctly show time elapsed
    - Statistics for RAM is not accurate
    - Code Folding is not saved when editor is closed
Feel free to post your comments/bugs/suggestions, we are looking forward to improve the release. Also, note that in case of severe crashes IDE will prompt you to send a bug report. It is of the greatest importance that you do send the report, since it contains the most relevant data about the potential problem.

Thank you all for help and keep up the good work!
mE Team.

janni
Posts: 5373
Joined: 18 Feb 2006 13:17
Contact:

#2 Post by janni » 05 Feb 2008 18:31

Now I know why you guys were so busy lately :D . Only why start with 8051? Most of us will be able only to check the IDE.

IDE it is then. First impressions:

- It looks a bit overcrowded. That's partly because of all the graphical showing off, partly because of the number of toolbars and windows. I'm sure it looks more 'professional' but less user-friendly. Good that it's customizable :) .

- Trying to customize the IDE I discovered that:
- vertical IDE resizing works in peculiar manner - it's severly limited and, depending on particular window's size, possible or impossible (autohide Messages option - nice one :D, allows to get out of tight spots, like irreducible maximum vertical screen size of IDE),
- gutter is unnecessarily wide and cannot be reduced unless one skips line numbers (decreasing font size does not help),
- I miss the right-hand toolbar :cry: ,
- default layout cannot be saved (that's good) but the 'Cannot delete system section' message is misleading,
- starting debugger recalls 'Debugger layout' - quite unnerving, really - I've blocked this, but miss automatic Watch window appearance.

One more thing - there is no actual compilation done, is there? I'll not belive that it can be done so quickly :D .

User avatar
zristic
mikroElektronika team
Posts: 6608
Joined: 03 Aug 2004 12:59
Contact:

#3 Post by zristic » 05 Feb 2008 19:09

Janni, you should consider bying a larger monitor :lol:

Joking, of course, thanks for the comments, we will consider them seriously.

janni
Posts: 5373
Joined: 18 Feb 2006 13:17
Contact:

#4 Post by janni » 05 Feb 2008 19:56

Happily I have comparatively large monitor, otherwise I'd be lost :D . Any predictions about next compilers to undergo metamorphosis?

More remarks:

- I've noticed that there are external port/pins declarations to libraries - is it a new trend to achieve better optimized code, or just a consequence of the ooooold 8051 architecture (I've already forgotten the insides of 8051)?
- those poor handicapped guys to use 8051 clones will probably miss jumps to ISRs in simulator,
- somehow I've lost the Statistics window - there's no View/Statistics option... oh, it's only in the Build toolbar,
- I'd prefer to have the Project Manager toolbar as a global one, rather than in Project Manager only (which may be not visible at the moment),
- when one docks few windows in one place, switching between them requires two mouse clicks - one to shift the title, one to display the contents - couldn't it be simpler?

Hey, I've found a way to have the right-side toolbar :D.

Will you tell us some more about the command-driven stand-alone compiler (nothing in Help...)?

jpc
Posts: 1986
Joined: 22 Apr 2005 17:40
Location: France 87

#5 Post by jpc » 05 Feb 2008 20:01

a second monitor is even better as now we can drag the separate elements from the IDE to wherever we want on the extended desktop.
For the unbelievers , delete the hex and recompile some of the examples!
I think i will need a little time to get used but am looking forward to see the PIC/dsPIC compilers of this new generation.
I wish now i could test it on some hardware , after all that is what it is made for!

piort
Posts: 1379
Joined: 28 Dec 2005 16:42
Location: Laval,Québec,Canada,Earth... :-)
Contact:

#6 Post by piort » 05 Feb 2008 21:42

At first look, that look good. Nice graphical work with the add of some delphi componant ;-)
some comments :
1) In the project settings windows, the combobox,the editbox and the radiobox are a bit too the right.that cut the black line at the right side of the windows.
2) When i move those side windows, they come stand alone windows and i didnt find how to put back in the original state... exept close the ide without save.

test done on winxp pro X64

some suggest :
1) is possible to add save and print option in the statistic windows ? That will be usefull when you work with org :roll:
2) is possible to make a more complete project wizard ? Normally , when we start project, we know what we want to do. So if you can include a pin definition by pin function and with lib function, that will be a big time saving.

BTW command line look promising and compile time is incredibly fast !

very nice work ME team !

now i look like a kid at chrismas...just beside the tree...waiting the time to open the Pic/DsPic new pascal IDE gift ))))

janni
Posts: 5373
Joined: 18 Feb 2006 13:17
Contact:

#7 Post by janni » 05 Feb 2008 22:41

jpc wrote:
I wish now i could test it on some hardware , after all that is what it is made for!
Same feelings here! Real pity mE started with 8051...

More data:

The IDE hung-up on me when I've tried to close it. I've noticed then that options are being saved only at closure (weren't saved this time, naturally). This may be inconvenient not only when IDE or system hangs, but also when, for example, one made changes one regrets later, or made the changes for temporary use only. Separate "Save" button would be more practical.

Realy good idea with bug reports - I've sent two so far. Forgotten to add to the last one that the code compiled exceeded demo limit - consequtive try to start simulation triggers the application error.

bruno
Posts: 767
Joined: 10 Sep 2005 02:10
Location: Lyon, France
Contact:

Re: mikroC for 8051 0.98 beta

#8 Post by bruno » 06 Feb 2008 02:17

zristic wrote: - New: Project manager
- New: Library manager
- New: Command line interface
Hi Zoran,

can you please be more specific about these points, and about the project groups too ?

Thanks !
Bruno
Bored with 7-segment ? Try the [url=http://www.micro-examples.com/public/microex-navig/doc/079-touchclock.html]TouchClock[/url]

Bob Lawrence
Posts: 300
Joined: 18 Aug 2004 11:55
Location: Lwr Sackville, Nova Scotia, Canada

Tested On 22" Screen

#9 Post by Bob Lawrence » 06 Feb 2008 05:24

Looks great to me :)

8)

User avatar
zristic
mikroElektronika team
Posts: 6608
Joined: 03 Aug 2004 12:59
Contact:

Re: mikroC for 8051 0.98 beta

#10 Post by zristic » 06 Feb 2008 08:51

bruno wrote:
zristic wrote: - New: Project manager
- New: Library manager
- New: Command line interface
Hi Zoran,

can you please be more specific about these points, and about the project groups too ?

Thanks !
Project Manager - Enables you to work with multiple projects in the same IDE. It is very useful when you are working on master-slave or in transmitter-receiver pair projects. It is handy to add both projects to one project group then to switch between them with a mouse click. No more close-open-close-open. A number of projects can be added to a group and such group can be saved for later use. Try it out, open one project as usual, then from the Project Manager choose "Add project to group".

Library Manager - Enables you to select which libraries will be included in the project. In old compilers all available libraries were included in any project, then linker decided which ones will be linked. Now, the new thing is that you can select which libraries will be included and, therefore, accelerate compiling process by decreasing load to linker. Finally, the Library Manager is made with another idea, which is a future surprise to users. I will talk about it when the time comes.

Command line interface - Compiler is now separated from IDE, you can call C compiler from command line. In IDE, the Messages Window shows the command line which is passed to the compiler. You can study it, though it will be fully documented. The idea behind this is to ease preparation of mikroCompilers for Linux platform (which is now one click away- all we have to do is to build the compiler source on Linux).

User avatar
zristic
mikroElektronika team
Posts: 6608
Joined: 03 Aug 2004 12:59
Contact:

Re: mikroC for 8051 0.98 beta

#11 Post by zristic » 06 Feb 2008 08:54

Has anyone tried to add an image to project? :lol: 8)

The idea behind this is to add a schematic image to your project, so you can easily follow what you are doing.

User avatar
rajkovic
mikroElektronika team
Posts: 694
Joined: 16 Aug 2004 12:40

#12 Post by rajkovic » 06 Feb 2008 09:04

janni wrote: - I've noticed that there are external port/pins declarations to libraries - is it a new trend to achieve better optimized code, or just a consequence of the ooooold 8051 architecture (I've already forgotten the insides of 8051)?
Mixture of both: it is new trend that gives better optimized code which is partially caused by 8051 architecture.
janni wrote: - those poor handicapped guys to use 8051 clones will probably miss jumps to ISRs in simulator,
will be added
Will you tell us some more about the command-driven stand-alone compiler (nothing in Help...)?
documentation was ready but we missed to include it in help
short help you can get by
executing cmd line compiler from command prompt like this
mikroc8051.exe -help

you will get short description like this:

mikroC8051 0.9.0.0 BETA (2007)
Usage: mikroC8051 [-<opts> [-<opts>]] [<infile> [-<opts>]] [-<opts>]]
<infile> can be of *.c, *.mcl type
The following options and some more (see manual) are valid:

-P <devicename> mcu for which compilation will be done.
-FO <oscillator>
-SP <directory> Add <directory> to the search path list.
-IP <directory> Add <directory> to the #include search list.
-N <filename> output files generated to file path specified by filename
-B <directory> save compiled binary files (*.mcl) to <directory>
-O miscalaeous output options
-DBG generate debug info
-E <opts> set memory model opts = S | C | L (small, compact, large)
-L check and rebuild new libraries


of course help will give more details.

bruno
Posts: 767
Joined: 10 Sep 2005 02:10
Location: Lyon, France
Contact:

#13 Post by bruno » 06 Feb 2008 09:08

Hi Zoran, thank you, very pleased with your answers 8)

Images in project is very good idea, will save much time.

:idea: is it possible to have most common pictures extensions (jpg, jpeg, gif, bmp, png...) in file selector mask when adding a picture ?

:idea: is it possible add URLs to project (datasheets...) and open them with user's favorite browser ?
Bruno
Bored with 7-segment ? Try the [url=http://www.micro-examples.com/public/microex-navig/doc/079-touchclock.html]TouchClock[/url]

User avatar
rajkovic
mikroElektronika team
Posts: 694
Joined: 16 Aug 2004 12:40

#14 Post by rajkovic » 06 Feb 2008 09:11

janni wrote: One more thing - there is no actual compilation done, is there? I'll not belive that it can be done so quickly :D .
thank you for not noticing it
:D . We will speed up all other compilers soon.

User avatar
zristic
mikroElektronika team
Posts: 6608
Joined: 03 Aug 2004 12:59
Contact:

#15 Post by zristic » 07 Feb 2008 14:07

So far we gathered a number of bug reports. Thank you all and keep on testing. We are quickly fixing all reported bugs.

Also, those who need the license key, feel free to request it, it is free of charge for you!

Post Reply

Return to “mikroC Beta testing”