cancel
Showing results for 
Search instead for 
Did you mean: 

STVD hangs on build

shabbyx
Associate II
Posted on November 19, 2013 at 18:21

I have encountered an issue with STVD which is persistent also in the latest version (4.3.4). The issue seems to be pre-compilation (my guess would be generation of the project.lkf file), but I'll get to it in a moment.

I am using Windows 7 (64-bits) and am using the COSMIC compiler. The version report from COSMIC is:

-------------------------------------

COSMIC STM8 C Compiler Evaluation Kit

Version: 4.3.7 Date: 29 Nov 2011

-------------------------------------

COSMIC Software STM8 C Cross Compiler (LIMITED) V4.3.7 - 29 Nov 2011 - Win32

COSMIC Software STM8 C Parser (LIMITED) V4.10.2 - 02 Nov 2011 - Win32

COSMIC Software STM8 Code Generator (LIMITED) V4.3.7 - 29 Nov 2011 - Win32

COSMIC Software STM8 Optimizer V4.3.6 - 29 Nov 2011 - Win32

COSMIC Software STM8 Macro-Assembler (LIMITED) V4.6.22 - 04 Aug 2011 - Win32

COSMIC Software Linker (LIMITED) V4.9.3 - 15 Feb 2012 - Win32

COSMIC Software Hexa Translator V4.4.7 - 23 May 2011 - Win32

COSMIC Software Absolute Listing V4.4.7 - 23 May 2011 - Win32

COSMIC Software Absolute C Listing V4.4.7 - 23 May 2011 - Win32

COSMIC Software Object Inspector V4.4.7 - 23 May 2011 - Win32

COSMIC Software Print Debug Info V4.4.7 - 23 May 2011 - Win32

COSMIC Software Extract Tiny Attribute V4.4.7 - 23 May 2011 - Win32

COSMIC Software ELF/DWARF Converter V4.6.15 - 05 Jul 2012 - Win32

The problem arises when I build the project. STVD becomes non-responsive and nothing happens. There doesn't seem to be any problem with the compilation stage since compiling individual files work ok. The problem is specifically related to manual creation of code segments. In my project.stp file, I have defined the segments as follows:

[Root.Config.1.Settings.6]

String.2.0=Running Linker

String.3.0=clnk $(ToolsetLibOpts) -o $(OutputPath)$(TargetSName).sm8 -fakeOutFile$(ProjectSFile).elf -fakeRunConv -fakeStartupcrtsi0.sm8 -fakeVectFilestm8_interrupt_vector.c -fakeVectAddr0x8000 -customMapAddress -customCfgFile$(OutputPath)$(TargetSName).lkf

String.3.1=cvdwarf $(OutputPath)$(TargetSName).sm8

String.4.0=$(OutputPath)$(TargetFName)

String.5.0=$(OutputPath)$(ProjectSFile).elf

String.6.0=2013,11,5,17,24,29

String.100.0=

String.101.0=crtsi.st7

String.102.0=+seg .text -b 0x9000 -m 0x0f00 -n .text

String.102.1=+seg .const -a .text -n .const -it

String.102.2=+seg .spiint -b 0x9f20 -m 0x0008 -n .spiint

String.102.3=+seg .cdcint -b 0x9f38 -m 0x0008 -n .cdcint

String.102.4=+seg .eeprom -b 0x4000 -m 0x80 -n .eeprom

String.102.5=+seg .bsct -b 0x0 -m 0x100 -n .bsct

String.102.6=+seg .ubsct -a .bsct -n .ubsct

String.102.7=+seg .bit -a .ubsct -n .bit -id

String.102.8=+seg .share -a .bit -n .share -is

String.102.9=+seg .data -b 0x100 -m 0x100 -n .data

String.102.10=+seg .bss -a .data -n .bss

String.102.11=+seg .FLASH_CODE -a .bss -n bootcode -ic

String.103.0=Code,Constants[0x9000-0x9eff]=.const,.text

String.103.1=Interrupts[0x9f00-0x9fff]=.spiint,.cdcint

String.103.2=Eeprom[0x4000-0x407f]=.eeprom

String.103.3=Zero Page[0x0-0xff]=.bsct,.ubsct,.bit,.share

String.103.4=Ram[0x100-0x1ff]=.data,.bss

String.104.0=0x3ff

String.105.0=libm0.sm8

Int.0=0

Int.1=0

Before I introduced the .spiint section, there was no problem. After adding it, when I tell STVD to build the project, it simply becomes non-responsive and I have to force close it. Adding more sections shows the same behavior. The only observation I could make is that the Release\project.lkf file does not get created before STVD hangs.

I have to specifically place the interrupt handlers in certain locations (so I don't overwrite the interrupt vector during bootload) and that's why I need a section for each interrupt.

I would very much appreciate it if you could shed some light on why this happens and how I can avoid it. Do let me know if you need me to provide further details.

#stvd
0 REPLIES 0