nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 08:35



Reply to topic  [ 106 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
Solid C - компилятор Си для Спринтера 
Author Message
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Shiru Otaku wrote:

Quote:
Интересует, насколько реально юзание сабжа. Есть вопросы. Скажем, что
и как там с банками памяти?


В сишную библиотеку (clib.irl) данные функции пока не добавлял (на тот
момент устал от портирования целого пакета, да составления док). Пока есть
только стандартные си-шные функции sbrk, malloc, calloc. Вобщем память
выделяется из кучи т.е. пространства между стеком и концом программы.

Quote:
Программа может быть больше 16к (64к)?


Карта распределения памяти си-программ такая:

#4100 - "ORG" программы
#C000 - вершина стека программы

Обрати внимание, после запуска программы, #4000 может быть использован
под буферы некоторых функций сишной библы. С 3-ей банкой можешь делать
что угодно. А вообще, линкер может собрать бинарник макс. 64 кило.

Quote:
Как с asm-вставками?


Только прилинковкой отдельными rel-файлами (и/или процедуры своей
библиотеки). Хотя слово "asm" зарезервировано (но не юзается).

Quote:
Как с прерываниями?


В сишной библе (clib.irl) есть enable(), disable().
Что либо иное - через асм-вставки.

Quote:
Версии кросс-компилятора на PC нет, как я понимаю?


А откуда ей взяться - авторских сорцев нет.

Quote:
А в SPRINT`е компилер будет работать?


Не проверял, влом было ставить Sprint SDK.

Quote:
Мне для программы нужно:
чтение входных параметров exe-файла;
работа с файлами на диске (чтение и запись);


Под "входными параметрами exe-файла" что подразумеваешь ?.
Чтение/Запись файлов - без проблем.

Quote:
вывод в консоль (printf, как я понимаю, уже есть?);


Правильно понимаешь. Лучше юзать cprintf, поскольку он быстрее.
Для разнообразия загляни в папку "EXAMPLES" пакета.

Quote:
асм-вставки с возможным юзанием дополнительного обработчика IM2
(чтобы с портом через прерывание работать).


Пиши свою процедуру и прилинковывай к программе.

_________________
Vasil Ivanov
vasil-i@yandex.ru


19 Jan 2005 14:53
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Vasil Ivanov wrote:
Shaos wrote:
Напомни какие файлы надо переводить на английский в первую очередь?


readme.rus - первое, что надо перевести. Здесь особенности
пакета, портированного на Спринтер.

bugs.! - он совсем маленький ;)

cc.rus - дока по си-компилятору.

devel-1.rus - некоторая инфа по сборке проги из нескольких
исходников.

devel-2.rus - создание своих библиотек (irl-формата),
для юзания с линкером ld.exe.

ld.rus - дока линкера.

ol.rus - дока библиотекаря.

whatsnew.rus - история версий программ пакета.

Очень не помешала бы дока по си-функциям (clib.rus) данного
пакета, потому, что в некоторых функциях встречаются отличия
от стандартных (PC-шных), например функции перемещения
указателя в файле. Но она объемистая.
Да я фактически все доки и перечислил ;). По .rel/.irl
форматам и по асму, уже есть англицкий вариант.
Вобщем все доки, кроме cc.rus и clib.rus ты переведешь за
час, а может и быстрей ;).


Сделал черновой перевод:
ld.rus - дока линкера,
ol.rus - дока библиотекаря,
whatsnew.rus - история версий программ пакета.
Все положил в форум "Sprinter (ENG)".

Осталось перевести 2 оставшихся текста - cc.rus и devel-2.rus

_________________
:dj: https://mastodon.social/@Shaos


06 Mar 2005 16:36
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
cr0acker wrote:
Вася сделал это! Правда я ничего скомпилировать им не могу:( Линкер виснет:(
Всем качать!:

Solid C


Сегодня линк перенаправлен на nedopc.org

_________________
:dj: https://mastodon.social/@Shaos


26 Nov 2005 19:34
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Завёл Спринтер - компилю солидом примеры ;)

_________________
:dj: https://mastodon.social/@Shaos


30 Oct 2007 21:11
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Post 
Shaos wrote:
Завёл Спринтер - компилю солидом примеры ;)


Чего это ты вдруг ?. Ностальгируешь по прошедшим временам ? ;)
Я уже давным давно Спринтер не включал и нет пока в планах.
Как писал один классик - "дела давно минувших дней, преданье старины глубокой".

_________________
Vasil Ivanov
vasil-i@yandex.ru


31 Oct 2007 07:56
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Vasil Ivanov wrote:
Shaos wrote:
Завёл Спринтер - компилю солидом примеры ;)


Чего это ты вдруг ?. Ностальгируешь по прошедшим временам ? ;)
Я уже давным давно Спринтер не включал и нет пока в планах.
Как писал один классик - "дела давно минувших дней, преданье старины глубокой".


Ну а чего бы не включить? ;)

_________________
:dj: https://mastodon.social/@Shaos


31 Oct 2007 16:58
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Post 
Shaos wrote:
Vasil Ivanov wrote:
Shaos wrote:
Завёл Спринтер - компилю солидом примеры ;)


Чего это ты вдруг ?. Ностальгируешь по прошедшим временам ? ;)
Я уже давным давно Спринтер не включал и нет пока в планах.
Как писал один классик - "дела давно минувших дней, преданье старины глубокой".


Ну а чего бы не включить? ;)


А смысл ?. Если бы проект был доступен (не закрытый), то был бы какой-то смысл.

_________________
Vasil Ivanov
vasil-i@yandex.ru


11 Nov 2007 00:39
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Vasil Ivanov wrote:
Shaos wrote:
Vasil Ivanov wrote:
Shaos wrote:
Завёл Спринтер - компилю солидом примеры ;)


Чего это ты вдруг ?. Ностальгируешь по прошедшим временам ? ;)
Я уже давным давно Спринтер не включал и нет пока в планах.
Как писал один классик - "дела давно минувших дней, преданье старины глубокой".


Ну а чего бы не включить? ;)


А смысл ?. Если бы проект был доступен (не закрытый), то был бы какой-то смысл.


Ну я всё ещё надеюсь построить некий минимально-функциональный аналог Спринтера с совместимым биосом и акселератором...

_________________
:dj: https://mastodon.social/@Shaos


11 Nov 2007 09:19
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Post 
Shaos wrote:
Vasil Ivanov wrote:
Shaos wrote:
Vasil Ivanov wrote:
Shaos wrote:
Завёл Спринтер - компилю солидом примеры ;)


Чего это ты вдруг ?. Ностальгируешь по прошедшим временам ? ;)
Я уже давным давно Спринтер не включал и нет пока в планах.
Как писал один классик - "дела давно минувших дней, преданье старины глубокой".


Ну а чего бы не включить? ;)


А смысл ?. Если бы проект был доступен (не закрытый), то был бы какой-то смысл.


Ну я всё ещё надеюсь построить некий минимально-функциональный аналог Спринтера с совместимым биосом и акселератором...


Т.е. на отдельной мат. плате ?. Что-то мне подсказывает, что это будет не скоро ;)

_________________
Vasil Ivanov
vasil-i@yandex.ru


14 Nov 2007 07:30
Profile
Maniac

Joined: 05 Oct 2009 19:44
Posts: 223
Location: 212.164.105.5
Reply with quote
Post 
я так и не понял, под какой страндарт си этот компилятор расчитан. пример кода:
Code:
#include <stdio.h>

void panic0(s)
char *s;
{
    printf("\nError: ");
    printf(s);
    printf("\n");
}

main(argc,argv)
int argc;
char *argv[];
{
     if(argc<2) panic0("Need some arguments.");
}
всё. у компилятора рвёт крышу. выдаёт неразумные ошибки об отсутствии скобок, о том что есть недекларированные переменные и вапще с десяток ошибок. однако в компиляторе HiTechC и на пц в VC всё прекрасно собирается. пример простой, но...


15 May 2012 21:55
Profile
Maniac

Joined: 05 Oct 2009 19:44
Posts: 223
Location: 212.164.105.5
Reply with quote
Post 
вобщем и целом - вариант с солидом не годится совершенно.
вижу только один рациональный путь - переписать библиотеки хайтеха под спринтер. сам компилятор потом использовать с эмулятором под фрибсд, на крайняк в z80mu под досом (или досБокс)...


23 May 2012 22:49
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
если просто нужен кросс-компилятор си для спринтера - бери z88dk - там спринтер был поддержан в своё время

ну или мой Sprinter SDK бери - не си, но близко ;)

_________________
:dj: https://mastodon.social/@Shaos


24 May 2012 11:00
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Post 
Sayman wrote:
я так и не понял, под какой страндарт си этот компилятор расчитан. пример кода:
Code:
#include <stdio.h>

void panic0(s)
char *s;
{
    printf("\nError: ");
    printf(s);
    printf("\n");
}

main(argc,argv)
int argc;
char *argv[];
{
     if(argc<2) panic0("Need some arguments.");
}


всё. у компилятора рвёт крышу. выдаёт неразумные ошибки об отсутствии скобок, о том что есть недекларированные
переменные и вапще с десяток ошибок. однако в компиляторе HiTechC и на пц в VC всё прекрасно собирается.
пример простой, но...


Гонишь. Это корректный вариант. Только что проверил на Спринтере - все Ok, нет никаких ошибок.

А вариант Шаоса Солид не понимает, выдаст кучу ошибок. В папке примеров компилятора есть си-сорцы. Ах да, я забыл,
это не твоя метода, знакомиться с инструментами, которыми пользуешься. Видимо ты привык так - взял сторонние сишные сорцы,
например юниксов, и без усилия (вообще всякого) собрал их... на 8-ми битке, а иначе, если не собирается - ф топку :)
Любителям подобной халявы лучше сменить тематику интересов.
Кста, я тебе подскажу (и не обращай внимания, что об этом в доке написано, ее же читать придется), для "чужих" си-сорцев (написанных не для Солида)
есть опция "-k" для cc1.exe. В каких-то случаях может выручить.

Пример Шаоса:
Code:
#include <stdio.h>

void panic0(char *s)
{
    printf("\nError: ");
    printf(s);
    printf("\n");
}

main(int argc, char **argv)
{
     if(argc<2) panic0("Need some arguments.");
}



P.S. Еще не надоело похваляться "своим" Хайтек-Си, который "все прекрасно собирает" ?. Уже на зубах навязло твое пустое словоблудие,
потому как к Спринтеру-то какое отношение он имеет ?. Солид, в плане генерации кода, на ступеньку выше будет всех сишных компиляторов,
имеющихся на данное время на 8-ми битках. Сравни асм-листинги после твоего Хайтек-Си и от Солида. Вот и тебе "пример простой, но..."


P.S.S
Quote:
Может кто погонять компилятор си по ссылке ниже?
в цпм он был слегка известен как microgenSF 5.17. это его кросс версия, вроде современная (автор прислал).
раньше я его не видел, даже цпмную версию.
https://www.dropbox.com/s/6f3v8g5l3pwj7 ... e.zip?dl=0


А чего, сам не можешь оценить выдаваемые асм-листинги ? Вот и узнаешь качество компилятора.

_________________
Vasil Ivanov
vasil-i@yandex.ru


09 Nov 2014 02:05
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Печально, что солид это K&R...

_________________
:dj: https://mastodon.social/@Shaos


09 Nov 2014 13:32
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Vasil Ivanov wrote:
Солид, в плане генерации кода, на ступеньку выше будет всех сишных компиляторов,
имеющихся на данное время на 8-ми битках. Сравни асм-листинги после твоего Хайтек-Си и от Солида. Вот и тебе "пример простой, но..."


а солид умеет юзать регистры проца как часто используемые переменные?

и вообще какой-нибудь компилятор сей для z80 это умеет делать?

_________________
:dj: https://mastodon.social/@Shaos


09 Nov 2014 15:31
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 106 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next

Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.