Dev HSC12 IDE


The IDE compiles code now, it's a start. It happily spews the results of the compilation. Currently everything sent to STDERR sees RED so to speak. If you click on a line the program will automatically load the afformentioned file in the ERROR. Warning will be marked in yellow (eventually), and stupid compilor verbosity green or blue (smile).

A list of recent files is now stored in the registry as well as projects. Project files have a P12 extension.

5-18-2004
I created a cool new splash screen for the project.  It displays the progress has a nifty title and shows what the heck it's doing while it's loading up. Currently there is a big 50 second delay on load up.
Why?  Well I had to have enough time to get this screen capture :)

I also relocated all the initialization code so that when the splash screen is shown ( in the main forms show event) everything it's doing can be shown in the splash screen. Interestingly I can show errors in this spot of the program and close the program down from there now as well. So this is much improved if an unrecoverable error ocures.


Originally I intended to use make and copy makes response to the screen. This however has become planely the wrong way to do it.  So the project file will become an XML file with all the project options defined therein.  The project.dtd will be stuffed into the applications CHIPS directory. 

An initial concept for this is the following:

Tag ID
Tag Description
projectgroup Defines a group of projects Must have the NAME attribute. This contains any number of project tags.
project Project tag defines a NAME (mandatory) other than it's project group and FILE (mandatory) attribute relative to the Path tag. LastMake and LastBuild define when this target was last Make'd or Build'd.  The target must have at least one module.  may contain an option tag for linking.  It may also have a Version tag.
version Version tag is an empty tag that contains 4 ATTRIBUTES.  MAJOR_REV MINOR_REV RELEASE and BUILD_NUMBER each attribute is a number between 0 and 2^32-1.  These should be adequate for most people. (Note this is just a tag currently I haven't designed it yet to auto increment the build number and include version information as an option, that will be LATER).
module Defines a SOURCE and TARGET (optional) may contain option tag for assembly compiling or linking.
option May contain compilor linker or assembler CLI options
path The Path tag contents are the directory path to the project.









There are likely more tags to define as this is not an all encompassing definition.

Doing things this way of course makes things complicated, but because all files are relative to the PATH, it means that if you moved the entire project somewhere, and loaded it up from there, the only thing the program has to do is look for all the parts in the old path, not finding it, it will look from the path the XML file was loaded from and update the path. THIS IS A GOOD THING, because I freaking dispise absolute paths!

Once the XML data is parsed some sort of structure will contain this information and that will be used for building things.

Using a project GROUP is a future feature, thus currently the project group will always be name ProjectGroup1 or some other useless name.  Once individual projects MAKE, BUILD, Load and Store correctly   Then I'll worry about project group thing, as it will definately be useful in the future.   The option of creating a MAKE file is also a future feature.

Also the processor definition file will be processed twice.  Once to set up the configuration information and once by a seperate piece of code the will create a new processor header file based on the settings in the Linker Options Screen as well register definitions defined in the file.
Hosted by www.Geocities.ws

1