On Saturday, 2 May 2015 at 13:08:27 UTC, Artur Skawina wrote:
On 05/02/15 05:28, Jens Bauer via Digitalmars-d-learn wrote:
On Saturday, 2 May 2015 at 03:21:38 UTC, Jens Bauer wrote:
For some reason, my build time has increased dramatically...
Building with 1 vector takes 0.6 seconds.
Building
On Saturday, 2 May 2015 at 03:21:38 UTC, Jens Bauer wrote:
For some reason, my build time has increased dramatically...
Building with 1 vector takes 0.6 seconds.
Building with 2 vector takes 0.7 seconds.
Building with 4 vector takes 0.9 seconds.
Building with 8 vector takes 1.1 seconds.
Building
On 04/27/15 19:49, Jens Bauer via Digitalmars-d-learn wrote:
I was wondering if there's a way to reduce my bulky startup
files a bit.
On Wednesday, 29 April 2015 at 13:58:14 UTC, Artur Skawina wrote:
mixin(VectorFuncs!(q{
PTR stack = {`_stack`};
EXC Reset_Ha
On Friday, 1 May 2015 at 21:36:29 UTC, Artur Skawina wrote:
On 05/01/15 22:29, Jens Bauer via Digitalmars-d-learn wrote:
On Wednesday, 29 April 2015 at 13:58:14 UTC, Artur Skawina
wrote:
Use `@weakalias!"blah"` instead:
enum weakalias(string A) = gcc.attribute.attribute(&
On Friday, 24 April 2015 at 22:18:22 UTC, tom wrote:
On Friday, 24 April 2015 at 13:12:56 UTC, Jens Bauer wrote:
On Friday, 24 April 2015 at 07:34:55 UTC, tom wrote:
would something like a STM32 NUCLEO-F401RE work?
I forgot to give you a proper answer on this one: I think it
should work, as
On Wednesday, 29 April 2015 at 13:58:14 UTC, Artur Skawina wrote:
On 04/27/15 19:49, Jens Bauer via Digitalmars-d-learn wrote:
I was wondering if there's a way to reduce my bulky startup
files a bit.
{snip}
Just create a helper module, which the startup files can all
use to generate the
On Wednesday, 29 April 2015 at 13:58:14 UTC, Artur Skawina wrote:
On 04/27/15 19:49, Jens Bauer via Digitalmars-d-learn wrote:
I was wondering if there's a way to reduce my bulky startup
files a bit.
If using the GNU Assembler (GAS), then one can reduce the code
using a macro like
I was wondering if there's a way to reduce my bulky startup files
a bit.
If using the GNU Assembler (GAS), then one can reduce the code
using a macro like this:
/* The EXC macro makes a weak+alias for the
* symbol 'value', then it stores the value in memory: */
.macro EXC
On Sunday, 26 April 2015 at 01:08:03 UTC, Rikki Cattermole wrote:
On 26/04/2015 5:53 a.m., Jens Bauer wrote:
I'm planning on adding more STM32 devices. including Cortex-M0,
Cortex-M0+ and Cortex-M3 devices ...
Move this over to e.g. D's wiki (or Github repo's) and post a
link into d.D news gr
On Saturday, 25 April 2015 at 19:33:05 UTC, Johannes Pfau wrote:
Am Sat, 25 Apr 2015 18:31:45 +
schrieb "Jens Bauer" :
I don't want to start another volatile discussion, but to me
it seems an attribute would not be a bad idea.
-And for completeness... read-only, write-only, read/write and
On Saturday, 25 April 2015 at 17:58:59 UTC, Timo Sintonen wrote:
On Saturday, 25 April 2015 at 17:04:18 UTC, Jens Bauer wrote:
I think volatileLoad and volatileStore are intended for this
(please correct me if my understanding is wrong).
Yes. Actually I am not sure whether they already exist
As I'm impressed with the interest in the startup-files I've made
so far, I'd like to add support for more devices.
In order to do so, I'd like to ask on this forum, which devices
you would be interested in.
Please list specific device names/numbers if possible, but device
families are of cour
On Saturday, 25 April 2015 at 17:11:22 UTC, Johannes Pfau wrote:
Am Sat, 25 Apr 2015 11:38:45 +
schrieb "Martin Nowak" :
On Saturday, 25 April 2015 at 05:07:04 UTC, Jens Bauer wrote:
>
> import mcu.stm32f439.all
I think that belongs in the makefile/dub.json as
-version=STM32F439.
Then yo
On Saturday, 25 April 2015 at 11:50:19 UTC, Martin Nowak wrote:
On Saturday, 25 April 2015 at 07:31:45 UTC, Jens Bauer wrote:
Static constructors are possible if you strip down ModuleInfo
(requires compiler hacking).
You should care about that stuff last. It's way more important
to make things
On Saturday, 25 April 2015 at 11:38:46 UTC, Martin Nowak wrote:
On Saturday, 25 April 2015 at 05:07:04 UTC, Jens Bauer wrote:
I hope to find a good way to use import for microcontroller
libraries, so it'll be easy for everyone. I'm thinking about
something like ...
import mcu.stm32f439.all
On Saturday, 25 April 2015 at 16:32:50 UTC, Timo Sintonen wrote:
On Saturday, 25 April 2015 at 11:56:55 UTC, Martin Nowak wrote:
You better dismiss the idea of using druntime/phobos.
The minimum runtime I have made does fit in 64k rom/ 64k ram,
which all STM32F4 devices have. With some work
On Saturday, 25 April 2015 at 16:28:24 UTC, Timo Sintonen wrote:
My work is based on the feature that a shared variable is
marked as volatile in gcc. This feature is buggy and should not
be used in the future.
I think volatileLoad and volatileStore are intended for this
(please correct me if
On Saturday, 25 April 2015 at 11:34:58 UTC, Martin Nowak wrote:
You can very well abstract an SPI, just need to have an
abstraction for pins.
http://developer.mbed.org/handbook/SPI
Considering all the problems involved, I will not be doing any
abstraction.
What I will provide, is a set of te
On Saturday, 25 April 2015 at 08:30:10 UTC, Rikki Cattermole
wrote:
On 25/04/2015 7:31 p.m., Jens Bauer wrote:
Normally, one would want to import only the most necessary
parts. Let's take an example: A microcontroller has USB, LCD
controller, Ethernet, U(s)ART, SPI, CAN, I2S, I2C and also
su
On Saturday, 25 April 2015 at 07:08:26 UTC, Rikki Cattermole
wrote:
I was referring to package.d files. And publically importing
all below modules/packages.
Normally, one would want to import only the most necessary parts.
Let's take an example: A microcontroller has USB, LCD controller,
Eth
On Saturday, 25 April 2015 at 05:14:57 UTC, Rikki Cattermole
wrote:
On 25/04/2015 5:07 p.m., Jens Bauer wrote:
I hope to find a good way to use import for microcontroller
libraries,
so it'll be easy for everyone. I'm thinking about something
like ...
import mcu.stm32f439.all
Ugh, package.
On Saturday, 25 April 2015 at 06:25:08 UTC, tom wrote:
On Saturday, 25 April 2015 at 04:01:47 UTC, Jens Bauer wrote:
(still no automatic mirroring, though I've installed
https://github.com/miracle2k/gitolite-simple-mirror)
it should be fairly simple, check the logs.
It's probably something si
On Saturday, 25 April 2015 at 04:21:06 UTC, Martin Nowak wrote:
The STM peripheral library really sux, verbose boilerplate for
the simplest stuff and no type safety for the enums (find the
difference of GPIO_PIN4 and GPIO_PinSource4 via debugging).
I couldn't agree more. I especially hate the
On Saturday, 25 April 2015 at 02:02:35 UTC, Rikki Cattermole
wrote:
Congrats!
Thank you. :)
Also I found this, https://github.com/defunkt/github-gem
Looks interesting. Maybe this can make things easier.
I created a repository for people who work with LPC17xx:
https://github.com/jens-gpio/L
On Saturday, 25 April 2015 at 01:06:16 UTC, Mike wrote:
On Saturday, 25 April 2015 at 00:33:26 UTC, Steven
Schveighoffer wrote:
Due to its large number of pins, and the way they are arranged,
they don't plug into breadboards, but you can easily use jumper
wires for that: https://www.adafruit.com
On Saturday, 25 April 2015 at 00:33:26 UTC, Steven Schveighoffer
wrote:
On 4/24/15 7:42 PM, Jens Bauer wrote:
http://www.digikey.com/product-search/en?x=0&y=0&lang=en&site=us&keywords=stm32f429+discovery
This is super tempting @ $24. As someone who is not used to
tinkering with raw hardware,
On Friday, 24 April 2015 at 22:18:22 UTC, tom wrote:
ill order a discover, i have to try this out.
http://www.digikey.com/product-detail/en/STM32F4DISCOVERY/497-11455-ND/2711743
this one right?
This board will do nicely, but you may want to get a STM32F29
discovery board, because the STM32F42
On Friday, 24 April 2015 at 12:55:46 UTC, Steven Schveighoffer
wrote:
I was hoping that github access would be possible now with a
more modern browser, no?
Actually I was getting sleepy and had to do something else the
next day, so I couldn't start right away.
But I'll have to learn using Gi
On Friday, 24 April 2015 at 07:34:55 UTC, tom wrote:
would something like a STM32 NUCLEO-F401RE work?
I forgot to give you a proper answer on this one: I think it
should work, as it's a STM32F401 microcontroller.
-So basically you get a 'bare metal' setup with no drivers.
However, as you kno
On Friday, 24 April 2015 at 07:34:55 UTC, tom wrote:
On Thursday, 23 April 2015 at 15:30:18 UTC, Jens Bauer wrote:
The most important thing, though, is that D-programmers now
have a starting point for the STM32F4xx. It should be easy to
adapt the same sources to other MCUs. I'm planning on addi
On Friday, 24 April 2015 at 09:15:21 UTC, Chris wrote:
I was more thinking of the audio thread. But the audio is
probably better off in a separate thread.
I think you could do this too.
In fact, this is very similar to how the audio from a MOD file is
decoded.
(I only mentioned an interrupt,
On Thursday, 23 April 2015 at 19:24:31 UTC, Chris wrote:
On Thursday, 23 April 2015 at 16:57:30 UTC, Jens Bauer wrote:
3: Audio mixing and playback (eg. a MOD player for instance).
5: Queueing up a bunch of different jobs;
At the moment I'm using threads to implement a speech
synthesizer. It
On Thursday, 23 April 2015 at 14:22:01 UTC, Ali Çehreli wrote:
On 04/23/2015 06:56 AM, ref2401 wrote:
http://ddili.org/ders/d.en/fibers.html
I appreciate any feedback before the book is finally printed
sometime before DConf.
This is great information. I didn't know anything about Fibers
be
On Thursday, 23 April 2015 at 12:14:59 UTC, Steven Schveighoffer
wrote:
On 4/23/15 5:54 AM, Jens Bauer wrote:
:) When having a PowerPC based Mac, you're living in a land of
"no support".
yikes! time for an upgrade :)
:)
I'm only staying with my PPC Mac for two reasons: My PCB design
softwa
On Thursday, 23 April 2015 at 04:59:47 UTC, Rikki Cattermole
wrote:
On 23/04/2015 4:53 p.m., Jens Bauer wrote:
On Thursday, 23 April 2015 at 04:48:16 UTC, Rikki Cattermole
wrote:
Ehh, maybe you should setup a e.g. vm of e.g. Linux Mint and
use e.g. Github via it.
:) When having a PowerPC base
On Thursday, 23 April 2015 at 04:48:16 UTC, Rikki Cattermole
wrote:
On 23/04/2015 2:41 p.m., Jens Bauer wrote:
... Unfortunately I have no 'read-only' checkout on my
git-server, but
I'll be happy to make a tar.bz2 archive upon request.
Make a github mirror if you don't want to push it directl
I've now created a few startup files for the STM32F4xx
microcontrollers.
You can grab them here ...
http://d.gpio.dk/cgi-bin/gitweb.cgi
... Unfortunately I have no 'read-only' checkout on my
git-server, but I'll be happy to make a tar.bz2 archive upon
request.
On Tuesday, 14 April 2015 at 02:31:23 UTC, Adam D. Ruppe wrote:
You might like my email.d too
https://github.com/adamdruppe/arsd/blob/master/email.d
It is able to help construct emails and also read an mbox
format - part of that code might help your imap library too.
This looks very nice. I
On Tuesday, 14 April 2015 at 02:28:40 UTC, Laeeth Isharc wrote:
My first 'open source' contribution was to a data structure in
his BBS system a few years later.
Those were the days. I wrote my own BBS for Atari ST in 1988
(which was never released to the public) - and I started writing
a ma
On Monday, 13 April 2015 at 14:31:56 UTC, Johannes Pfau wrote:
Am Sun, 12 Apr 2015 17:27:31 +
schrieb "Jens Bauer" :
I won't say it's impossible, but it would be cumbersome
processing email on an AVR.
There are HTTP servers for AVR(8bit) devices, so it should be
possible.
That's absolu
On Saturday, 11 April 2015 at 22:45:39 UTC, Laeeth Isharc wrote:
Yes - nice to know it can do that also. For me I need to have
a way of managing large amounts of email (I have about 2mm
messages) including for natural language processing etc.
Dovecot/sieve + pipe facility is ok, but not per
On Friday, 10 April 2015 at 19:59:49 UTC, Laeeth Isharc wrote:
Started working on a simple one.
Sounds very good to me. :)
It's not exactly rocket science, but a bit fiddly.
Simple is good.
Need to have some way of manipulating email in D though.
I agree. This would especially be cool,
On Friday, 10 April 2015 at 00:05:29 UTC, Mike wrote:
On Wednesday, 8 April 2015 at 15:25:20 UTC, Jens Bauer wrote:
Question number 2: Is it possible to change the VectorFunc
to be a real function pointer, rather than a void* ?
Can you successfully cast(ISR)&_stack ?
I don't know if that's
On Thursday, 9 April 2015 at 10:47:42 UTC, Artur Skawina wrote:
On Tuesday, 7 April 2015 at 20:33:26 UTC, Jens Bauer wrote:
-It would be neat, if @attribute("weak") and
@attribute("alias","function") could be combined into one, but
I haven't found a way to do that
http://forum.dlang.org/pos
On Wednesday, 8 April 2015 at 23:18:41 UTC, Mike wrote:
You may also wnat to compile with -nodefaultlibs -nostdlib
-nostartfiles. That removes the cruntime and libgcc.
I forgot about those. Yes, when excluded those and added a
/DISCARD/ for the exidx and armexidx, I finally got rid of the
hu
On Wednesday, 8 April 2015 at 23:28:45 UTC, Mike wrote:
If I use the STM32 system bootloader, and reset the MCU,
the CCRAM is disabled by default.
I see. That is absolutely incorrect behaviour of the bootloader.
A bootloader should only change the things that are absolutely
necessary to change
On Wednesday, 8 April 2015 at 23:23:53 UTC, Mike wrote:
I actually added that out of necessity, not optimization. Id I
use the STM32, and reset the MCU, the CCRAM is disabled by
default. Since my stack is in CCRAM, I need to first enable it
before any functions can be called.
According to S
On Wednesday, 8 April 2015 at 15:53:37 UTC, Jens Bauer wrote:
[snip] I find it strange that calling an empty function outside
the source file will cause that huge difference.
-But of course, there's a logic explanation somewhere. ;)
It might be caused by the linker script; I'll try and see if I
On Wednesday, 8 April 2015 at 11:17:12 UTC, Mike wrote:
On Tuesday, 7 April 2015 at 20:33:26 UTC, Jens Bauer wrote:
enum weak = gcc.attribute.attribute("weak");
enum isrDefault = gcc.attribute.attribute("alias",
"defaultHandler");
extern @weak @isrDefault void NMI_Handler();
extern @weak @isr
On Wednesday, 8 April 2015 at 11:17:12 UTC, Mike wrote:
On Tuesday, 7 April 2015 at 20:33:26 UTC, Jens Bauer wrote:
Question number 3: How can I call an external function and
keep the binary file size down ?
Are you compiling with -ffunction-sections -fdata-sections and
linking with --gc-sec
On Wednesday, 8 April 2015 at 11:17:12 UTC, Mike wrote:
I did something along these lines (modified to match your
example) and it worked fine for me:
alias VectorFunc = void function();
@attribute("weak") @attribute("alias", "defaultHandler")
extern void Reset_Handler();
Strange; I can't get
Something tells me that now is when I have to start doing some
hard work. ;)
-Sorry, I need to split this up into short replies/questions.
On Wednesday, 8 April 2015 at 11:17:12 UTC, Mike wrote:
On Tuesday, 7 April 2015 at 20:33:26 UTC, Jens Bauer wrote:
Question number 2: Is it possible to cha
On Wednesday, 8 April 2015 at 08:02:35 UTC, Johannes Pfau wrote:
I actually saw these errors when I first tested your examples,
but I thought that was a mistake in the example code. I didn't
even know that extern weak symbols get default values in C ;-)
Don't feel bad about that. I think I fou
On Tuesday, 7 April 2015 at 20:33:26 UTC, Jens Bauer wrote:
Question number 1: How can a C subroutine be made optional, so
it's called only if it linked ?
Question 1 might be answered by the following thread:
http://forum.dlang.org/thread/mg1bad$30uk$1...@digitalmars.com
-So no need to answer q
I'm currently working on a startup file for Cortex-M.
Thanks to Johannes, I'm now able to implement almost everything I
need.
While the most important part of the code code works, there are
still a few things, that I would like added/changed.
Here's a cut-down version of a start.d:
---8<
On Sunday, 5 April 2015 at 10:16:10 UTC, Johannes Pfau wrote:
I'll push support for the section attribute in 1~2 hours.
(waiting for the testsuite ;-)
[1]
https://github.com/D-Programming-GDC/GDC/blob/master/libphobos/libdruntime/gcc/attribute.d
I've made a couple of tests and it all works a
On Sunday, 5 April 2015 at 10:16:10 UTC, Johannes Pfau wrote:
> On 4/04/2015 3:08 a.m., Jens Bauer wrote:
It's possible to use gcc.attribute with custom mini-runtimes.
You need the gcc/attribute.d file but you can simply copy/paste
it from
druntime[1], there are no dependencies.
After havi
On Saturday, 4 April 2015 at 02:57:22 UTC, Rikki Cattermole wrote:
On 4/04/2015 3:08 a.m., Jens Bauer wrote:
src/start.d:7:10: error: module attribute is in file
'gcc/attribute.d' which cannot be read
import gcc.attribute;
^
Uhm, it seems that druntime is required for that;
unfort
On Friday, 3 April 2015 at 13:58:21 UTC, Jens Bauer wrote:
On Friday, 3 April 2015 at 13:37:50 UTC, Rikki Cattermole wrote:
On 4/04/2015 2:12 a.m., Jens Bauer wrote:
Is there a way of setting the target section for a variable
or an array ?
Supposedly gdc supports it.
[0] http://wiki.dlang.or
On Friday, 3 April 2015 at 13:37:50 UTC, Rikki Cattermole wrote:
On 4/04/2015 2:12 a.m., Jens Bauer wrote:
Is there a way of setting the target section for a variable or
an array ?
Supposedly gdc supports it.
[0] http://wiki.dlang.org/GDC/Using_GDC Extensions->Attributes
[1]
https://gcc.gnu.
Today I finally succeeded in building my first "Hello World" D
program (after fixing the endian problem).
Is there a way of setting the target section for a variable or an
array ?
Eg. the equivalent way of doing this using gcc is:
__attribute__((section(".isr_vector"))) VectorFunc g_pfnVecto
61 matches
Mail list logo