Page 2 of 2

Re: SDCC Z80 = гавно

PostPosted: Thu, 10.08.2017 17:08:19
by TS-Labs
SfS wrote:Про локальные переменные.

Да, я уже знаю про их синтаксис.
idxi wrote:Печалька.. ноо.. где ж все Лучшие спековские умы-кодеры?

Как прошла разморозка? Год 2017 щас, есличо.

Re: SDCC Z80 = гавно

PostPosted: Thu, 10.08.2017 18:05:13
by idxi
VBI wrote:а что ТЫ сделал для Репа?

Ожидаемый Вопрос)..
ничего.. 25 лет ничего не писал.. в востановлении памяти.. не все же кодеры.. вот я как то сам самозавлекаюсь и "за других" беспокоюсь.. отсюда такое видение.. или ну нах.. забить и не вспоминать? - это самое простое.

Re: SDCC Z80 = гавно

PostPosted: Thu, 10.08.2017 18:57:37
by TS-Labs
Поменьше пафосу для начала. Рутину никто не отменял.

Re: SDCC Z80 = гавно

PostPosted: Fri, 11.08.2017 18:40:09
by SfS
TS-Labs wrote:Рутину никто не отменял.


Рутину никто не видит:) Она становится заметна только, когда ей перестают заниматься:)

Ну.. Например, если трубу прорвет и в говне полквартала - то сразу заметно, что сантехники - очень нужная и важная профессия:) А пока все в порядке - кто вообще о них вспоминает? Ну копаются в грязи какие-то люди.

Это как бы частный случай старой мудрости - "что имеем - не бережем, потерявши - плачем".

idxi, а ты просто начни что-нибудь делать на Спеке:) Сразу и память восстановится:)

Re: SDCC Z80 = гавно

PostPosted: Fri, 11.08.2017 18:48:57
by SfS
Специально для idxi!

Вот примеры тебе в архиве и скриншоты.

Вот тебе система и дока: https://github.com/salextpuru/sdcc-noinit

Вот тебе куча утилит для разработки: https://github.com/salextpuru/speccy-toochain

Бери, Твори, Выдумывай, Пробуй.

Re: SDCC Z80 = гавно

PostPosted: Thu, 17.08.2017 17:31:47
by idxi
SfS wrote:ты просто начни что-нибудь делать на Спеке:) Сразу и память восстановится:)
ага, этот процесс уже в процессе)
SfS, thx-thx! почитываю ранне выпущенную литературу

TSL, не мог бы вы в более подро6ностях разжевать (ооочень желательно "на пальцах") - как работать с vdac2, как работь с dma-вообще.. штуки классные, но пока понимания нету.. прям очень-очень прошу.. шарики видел.. мало чего понятно.. dma... - memory :| я вот прямо чичас дуб

Re: SDCC Z80 = гавно

PostPosted: Thu, 17.08.2017 18:48:43
by TS-Labs
idxi
Про вдак2 цикл статей на хайпе. Отдельно от него я разжевывать не буду. Про ДМА - цикл статей VBI там же.
Вот прямо для дубов и прямо на пальцах - увольте. Когда приходится перегребать тонны даташитов, а иногда и реверсить бинари - теряешь навыки объяснения для дубов.

Re: SDCC Z80 = гавно

PostPosted: Thu, 17.08.2017 19:17:38
by idxi
TSL, пожалика, ткни еще раз Линками где в hype все это. Спасибо!

Re: SDCC Z80 = гавно

PostPosted: Thu, 17.08.2017 19:49:39
by VBI

Re: SDCC Z80 = гавно

PostPosted: Tue, 25.09.2018 19:39:59
by VBI
Dear SDCC users among the 8-bit programmers,

today the first Release Candidate (RC1) for SDCC 3.8.0 has been created.
As always it has been put online in our SourceForge File section.
https://sourceforge.net/projects/sdcc/files/

If you have the time, please verify it and report back with the positive
or negative results.

In previous release 3.7.0, no binaries were released. 3.8.0 has binaries
gain, though the list of binary platforms changed. For 3.8.0, binaries
are released for GNU/Linux on amd64, Windows on amd64, macOS on amd64,
Windows on x86.
However: Unlike previous binary releases, the windwos installer have not
been checked by the Release Manager (my only machine with a Windows
installed needs a new poer supply, which hasn't arrived yet).

There have been various of improvements, both features and bug fixes
since SDCC 3.7.0. The full ChangeLog is at
https://sourceforge.net/p/sdcc/code/HEA ... ChangeLo...

The following is a list of particularly noticeable new features.

* Additional general utility function: bsearch()
* Support for rematerialization in the stm8 backend reduces register pressure and stack usage
* Merged upstream GNU binutils 2.30
* All Python code is now fully compatible with both Python 2.7 and Python 3.6, so Python 3 can be used instead of Python 2.
* Regression testing for diagnostics.
* Improved handling of local bool variables in the mcs51 backend substantially reduces code size.
* Large memory model for stm8 for 24-bit codespace allows using more than 32KB of Flash for code.
* New optimizations for calls to some standard library function (printf(), puts(), strcpy()).
* The type of true and false from stdbool.h change from int to bool.
* New C2X mode (--std-c2x, --std-sdcc2x, #pragma std_c2x) adds support for one-argument static_assert variant.
* Intermingling of declarations and statements (ISO C99).
* Support headers for AX8052 devices.
* Adopted GCC 8.2 regression tests (execute part of the GCC C torture tests).

Philipp Klaus Krause
SDCC 3.8.0 Release Manager

P.S.: Apart from the improvements in standard compliance, there is no "big" new feature relevant to Sega 8-bit programming. But there some smaller improvments in code generation for the Z80 and many bugfixes.

P.P.S.: This version is a bit more strict about use of the "restrict" keyword than the previous one; I have already made the necessary fix in libcvu for it to work with this SDCC, and will release a new libcvu version soon.

Re: SDCC Z80 = гавно

PostPosted: Tue, 25.09.2018 22:40:05
by idxi
Классно !! The big respect to SDCC Release Managers !

ps: никто не пробовал еще сравнивать генерируемый код ?

Re: SDCC Z80 = гавно

PostPosted: Thu, 27.12.2018 13:37:18
by SfS
Давно не было от меня ничего. Вот наваял. Есть куда расти.

Для тех, кого нет на zx.pk.ru

https://github.com/salextpuru/sdcc-noin ... c-art2.pdf

Re: SDCC Z80 = гавно

PostPosted: Thu, 27.12.2018 16:50:15
by TS-Labs
Спасибо!

Re: SDCC Z80 = гавно

PostPosted: Thu, 27.12.2018 18:49:26
by SfS
Всегда пожалуйста)

Re: SDCC Z80 = гавно

PostPosted: Thu, 28.11.2019 15:15:21
by TS-Labs
Найдена мощная бага, имеющаяся в версиях 3.6-3.9.

Локальные переменные (кэп говорит: объявленные внутри фций) нельзя использовать с референсами (адресовать их по их адресу в памяти, кэп).

Code: Select all
void foo2(int *a)
{
  *a = 42;
}

void foo()
{
  int i;
  foo2(&i);
}


В этом примере i превращается в оборотня и содержит число, способное разделить на 0 всю вселенную.

Варианты обхода данного глюка:
1. Объявлять переменные, от которых передаются референсы только глобальными (тупо).
2. Ставить возле переменных static, чтоб компилер их ложил клал сразу в память.

Re: SDCC Z80 = гавно

PostPosted: Fri, 06.12.2019 08:53:41
by DimkaM
TS-Labs wrote:Локальные переменные (кэп говорит: объявленные внутри фций) нельзя использовать с референсами (адресовать их по их адресу в памяти, кэп).

хм. Это не бага, это прям крест какой то на весь сдцц.

Re: SDCC Z80 = гавно

PostPosted: Mon, 22.03.2021 18:28:48
by idxi
Тем временем SDCC развивается. ДВижение вперед идет. Одни билды в основной массе своей до 80% касаются именно Z80 !

http://svn.code.sf.net/p/sdcc/code/trunk/sdcc/ChangeLog

Re: SDCC Z80 = гавно

PostPosted: Mon, 22.03.2021 19:50:50
by TS-Labs
Интересно, надо качнуть и попробовать. Вангую, что хер бы чо пофиксили, но кто знает...

Re: SDCC Z80 = гавно

PostPosted: Tue, 23.03.2021 10:39:04
by idxi
Ну что, TSL, лучше стало ? :)