Search found 140 matches

by kazade
Sun Jan 19, 2020 2:41 pm
Forum: Programming Discussion
Topic: Restoring profiling to the KOS toolchain
Replies: 18
Views: 449

Re: Restoring profiling to the KOS toolchain

So with TapamN's confirmation that it is indeed possible to profile from a background thread, I went ahead and had a go! The result is called dcprof, and it can be found here: https://gitlab.com/simulant/dcprof My initial tests seem to show that it's working, but please let me know how you get on wi...
by kazade
Thu Jan 09, 2020 3:00 am
Forum: Programming Discussion
Topic: Awesome-Dreamcast list of ressources on GitHub
Replies: 1
Views: 138

Re: Awesome-Dreamcast list of ressources on GitHub

This is really great!

And not just because I'm on there 3 times :p
by kazade
Tue Jan 07, 2020 3:17 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

If anyone fancies helping with this, here's a stripped (large) debug .elf showing the problem, and also the accompanying debuginfo and linker map: https://mega.nz/#!IV8DTK6L!QFeznqFRqleT ... vOETiTgFn0
by kazade
Tue Jan 07, 2020 1:25 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

Ok more info... * it doesn't happen with all C++ apps, I have a simple hello world compiling and running fine with the same CMake toolchain file * __mutex isn't used much in libstdc++, but every time it's used it's in a static local variable, returned by reference from a factory function. It's only ...
by kazade
Mon Jan 06, 2020 5:55 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

Right, I'm resurrecting this because there's definitely a bug in C++ support *somewhere*. Here's what I know: 1. When using C++, at some point during static initialisation, something is trying to lock a mutex before that mutex has been initialised. It's a gnu __mutex class which wraps gthread mutex ...
by kazade
Wed Jan 01, 2020 12:44 am
Forum: Homebrew Software and Indie Games Discussion
Topic: New Game! Swirling Blades: Desert Thunder
Replies: 0
Views: 149

New Game! Swirling Blades: Desert Thunder

Hi everyone! This is my submission for the Dream On Game Jam. It's a demo of a larger game I'm working on and the first true test of my Simulant Game Engine . Screenshot from 2019-12-30 14-40-40.png Screenshot from 2019-12-30 14-40-55.png Known Issues: It's a little slow, I'm going to spend the next...
by kazade
Mon Dec 30, 2019 12:53 am
Forum: Programming Discussion
Topic: Restoring profiling to the KOS toolchain
Replies: 18
Views: 449

Re: Restoring profiling to the KOS toolchain

I've been thinking of taking exactly the same approach! Did you have any luck finding the code?
by kazade
Sun Dec 22, 2019 12:41 am
Forum: Programming Discussion
Topic: Restoring profiling to the KOS toolchain
Replies: 18
Views: 449

Restoring profiling to the KOS toolchain

Hi! I'm in desperate need of getting some real profiling data from the Dreamcast. It looks like in theory that the -pg flag should work, and we could get gmon.out generated in the /pc directory. However, the KOS toolchain patches remove all the profiling code from crt1.S Does anyone know if I can ju...
by kazade
Wed Nov 27, 2019 12:16 am
Forum: Programming Discussion
Topic: dcload-ip with DHCP support!
Replies: 24
Views: 535

Re: dcload-ip with DHCP support!

Moopthehedgehog wrote:
Tue Nov 26, 2019 7:21 pm
If there were a Dreamcast community Slack or something I'd probably be on that. Slack actually saves conversations and has notifications, which are like the big downfalls of standard IRC.
Discord is basically Slack - click the link :grin:
by kazade
Sun Nov 24, 2019 7:17 am
Forum: Programming Discussion
Topic: dcload-ip with DHCP support!
Replies: 24
Views: 535

Re: dcload-ip with DHCP support!

This is very exciting!! Great work!

There are a bunch of people on the Simulant Discord* who I'm sure will be excited to try this, feel free to drop in and chat :)

*https://discordapp.com/invite/TRx94EV
by kazade
Tue Oct 15, 2019 3:38 am
Forum: Programming Discussion
Topic: Developing for Dreamcast and PC simultaneously
Replies: 11
Views: 909

Re: Developing for Dreamcast and PC simultaneously

If you use GLdc and ALdc then you only need to special case input and window creation really. Alternatively like Protofall suggested, Simulant is my cross platform general purpose game engine, it's massively under development but it's easy to get up and running and building stuff for Windows, Linux ...
by kazade
Thu Aug 22, 2019 11:39 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

OK, still suffering this... mrneo and I have found that it's the code in .init which is doing this, and not .ctors as BigEvilCorporation found. I have fixed all the warnings in my code, there's not thing there at -Wall that isn't just an unused variable so I think the cause is different. My theory i...
by kazade
Tue Aug 20, 2019 9:06 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

OK, I've done some more digging, I'm making some progress. The reason that the exception is being thrown is that locking the mutex fails with EINVAL in this function: https://github.com/KallistiOS/KallistiOS/blob/5218f13d0aec2002f5ad8ada6c71ed0913600f15/kernel/thread/mutex.c#L85 This is likely cause...
by kazade
Tue Aug 20, 2019 3:53 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

OK, new levels of weird... So I compiled GCC 4.9 for Fedora 30, I then used that to compile the toolchain thinking that if there's any strange difference in output caused by compiling with GCC 8 then this should rectify it. It didn't work, same problem. I'm struggling to make sense of this. A toolch...
by kazade
Sun Aug 18, 2019 6:58 am
Forum: Programming Discussion
Topic: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error
Replies: 17
Views: 1315

Re: KOS - static initialisation failure: __gnu_cxx::__concurrence_lock_error

OK, I'm hitting the same error and it's beyond weird! I've been building my game engine using a docker container. This docker image was based on Fedora 21 (super old!) because for some reason I'd previously been unable to create a working toolchain with a GCC version that shipped in any later versio...
by kazade
Mon Jul 29, 2019 12:34 am
Forum: Programming Discussion
Topic: Anybody available to help with dc-load-ip testing?
Replies: 21
Views: 1263

Re: Anybody available to help with dc-load-ip testing?

That actually might just work. Obviously the dc-load-ip boot disc would need adapting to connect to the internet before waiting, but then the Dreamcast would get it's own ip address on the local network...
by kazade
Tue Jul 23, 2019 2:42 am
Forum: Homebrew Software and Indie Games Discussion
Topic: ALdc 1.0 Released!
Replies: 1
Views: 424

ALdc 1.0 Released!

TL;DR Today I tagged version 1.0 of ALdc; an OpenAL 1.1 library for the Dreamcast. You can find it on GitLab: https://gitlab.com/simulant/ALdc Longer version! ALdc is a port of MojoAL to the Dreamcast. It's been achieved by porting the necessary parts of SDL2 and then writing a custom SDL audio dev...
by kazade
Wed Jun 12, 2019 4:37 am
Forum: Programming Discussion
Topic: unable to find a register to spill in class 'FP0_REGS'
Replies: 12
Views: 408

Re: unable to find a register to spill in class 'FP0_REGS'

- SuperH is still (supposedly) supported on GCC, but there's no one really maintaining it. - IIRC the atomic stuff in C++11 can be emulated in the standard library with mutexes etc. if the atomic instructions aren't available and I vaguely remember an issue that GCC's lib doesn't do that, but there ...