nedoPC.org

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



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

Joined: 12 Oct 2004 13:49
Posts: 233
Reply with quote
Post 
Vasil Ivanov wrote:
У него можно получить сорцы SOLID C или это глухое дело ?.


Представления не имею. Если найдешь SOLiD-а, обязательно свистни мне :) Он всплыл на пару сообщений в Фидо-эхе RU.MSX где-то в 2001-м году, но потом опять пропал :(


16 Oct 2004 15:33
Profile
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Post 
dhau wrote:
Vasil Ivanov wrote:
У него можно получить сорцы SOLID C или это глухое дело ?.


Представления не имею. Если найдешь SOLiD-а, обязательно свистни мне :) Он всплыл на пару сообщений в Фидо-эхе RU.MSX где-то в 2001-м году, но потом опять пропал :(


Свисну ;)

_________________
Vasil Ivanov
vasil-i@yandex.ru


22 Oct 2004 13:09
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
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 ты переведешь за
час, а может и быстрей ;).


Вопрос - как перевести слово "библиотекарь", чтобы было правильно в том смысле, в котором оно тут используется?

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


05 Nov 2004 18:49
Profile WWW
God
User avatar

Joined: 03 Feb 2003 13:53
Posts: 1078
Reply with quote
Post 
Shaos wrote:
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 ты переведешь за
час, а может и быстрей ;).


Вопрос - как перевести слово "библиотекарь", чтобы было правильно в том смысле, в котором оно тут используется?

Librarian


05 Nov 2004 18:54
Profile
Maniac

Joined: 12 Oct 2004 13:49
Posts: 233
Reply with quote
Post 
Archiver


06 Nov 2004 08:52
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
dhau wrote:


А вот то что на спм делает LBR-каталоги как называется?

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


06 Nov 2004 09:00
Profile WWW
Maniac

Joined: 12 Oct 2004 13:49
Posts: 233
Reply with quote
Post 
Shaos wrote:
А вот то что на спм делает LBR-каталоги как называется?


LBR = Librarian?


06 Nov 2004 09:24
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
dhau wrote:
Shaos wrote:
А вот то что на спм делает LBR-каталоги как называется?


LBR = Librarian?


LBR = Library, а тот кто их делает, по идее, должен называться Librarian ;)
А тут речь идет о другом "библиотекаре" - OL, который делает IRL библиотеки. Вот его описание на английском http://www.seasip.demon.co.uk/Cpm/irl.html

И я собственно спрашивал как его назвать, т.к. в первом варианте я недолго думая написал "Library Maker", а потом cr0acker посоветовал назвать это "Librarian", т.е. непосредственный аналог первоначального слова "Библиотекарь", но я сильно подозреваю, что это должно уже как-то называться по английски, т.к. английский язык вроде как родной для CP/M и термины должны быть устоявшимися.

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


06 Nov 2004 18:40
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Shaos wrote:
Shaos wrote:
Vasil Ivanov wrote:
Shaos wrote:
В данном случае нам не нужен массив чаров - нам нужен первый элемент массива, т.к. 0x%02X. Далее, чтобы подучить первый элемент массива надо разыменовать указатель на него, т.е. *buffer. Ты говоришь, что компилятор это не просекает, т.е. надо писать (char)*buffer, но никак не (char*)*buffer, т.к. последнее означает преобразовать первый символ по указателю к указателю...


В папке Examples-ов в bin2c.c, откуда этот пример, обращение идет
именно как к чар-массиву.

Твои рассуждения правильны, но в отношении к данной версии Солида они не подходят. Только что проверил:
...


Да - это глюк. А если попробовать вот так:

printf("0x%02X\n", *(char*)buffer);

кол-во звездочек такое же, но они переставлены и код является верным с точки зрения любого компилятора Си


Только что проверил сам - похоже, что %X вообще неработает с типами char - ни с *buffer, ни с buffer[0], ни просто с переменной типа char - прибавляется еще старший байт, НО если предварительно сделать присвоение int i = *buffer и именно этот int скормить принтфу - то все будет ок.


Положил переведенный bugs.txt в Sprinter (ENG) с комментарием про то что char не работает c %X в этом компиляторе.

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


06 Nov 2004 21:37
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post 
Shaos wrote:
dhau wrote:
Shaos wrote:
А вот то что на спм делает LBR-каталоги как называется?


LBR = Librarian?


LBR = Library, а тот кто их делает, по идее, должен называться Librarian ;)


Блин - они его называют "Archiver" (LAR - Library Archiver)

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


06 Nov 2004 21:57
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
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 ты переведешь за
час, а может и быстрей ;).


Перевел devel-1.txt - см. форум Sprinter (ENG)

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


11 Nov 2004 07:17
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 14:34
Posts: 413
Reply with quote
Post 
Shaos wrote:
Перевел devel-1.txt - см. форум Sprinter (ENG)


Спасибо. Положу себе в солид-пакет.

_________________
Vasil Ivanov
vasil-i@yandex.ru


11 Nov 2004 10:19
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
http://nedopc.org/nedopc/sprinter/download/sc_dll.zip
Автор: Vasil Ivanov

Quote:
LOADDLL

#include <stdlib.h>

int loaddll("name.ext");

Описание.

Функция загружает указанную dll-библиотеку в 3-е окно.
Возвращает дескриптор библиотеки или -1 при ошибке.


FREEDLL

#include <stdlib.h>

int freedll(handle);

Описание.

Функция выгружает из памяти библиотеку handle.
Возвращает 0, если не было ошибок и -1 при ошибке.


CALLDLL

#include <stdlib.h>

int calldll(handle, func, &inregs);

Описание.

Функция вызывает процедуру библиотеки handle, на исполнение.
Номер процедуры указывается в func, параметры вызываемой процедуре
передаются через объединение REGS inregs. Передавать параметры можно
через любые (не альтернативные) регистры или рег. пары.
Функция возвращает дескриптор библиотеки или -1 при ошибке.


INFODLL

#include <stdlib.h>

int infodll(handle, buffer);

Описание.

Получить информацию о загруженной библиотеке handle. Функция
заполняет буфер buffer размером 32 байта, первыми 32-мя байтами заго-
ловка dll-библиотеки.
Функция возвращает дескриптор библиотеки или -1 при ошибке.



P.S. Эта разработка поддерживает Libman v1.3, изменённый Василием:

http://nedopc.org/nedopc/sprinter/download/libman13.zip

Про LIBMAN как таковой существует отдельная тема, созданная в декабре 2020:

http://www.nedopc.org/forum/viewtopic.php?f=60&t=20252

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


25 Nov 2004 17:56
Profile WWW
Doomed

Joined: 16 Mar 2002 17:00
Posts: 490
Reply with quote
Интересует, насколько реально юзание сабжа. Есть вопросы. Скажем, что и как там с банками памяти? Программа может быть больше 16к (64к)? Как с asm-вставками? Как с прерываниями?

Версии кросс-компилятора на PC нет, как я понимаю? А в SPRINT`е компилер будет работать?

Понятно, что я и сам могу всё узнать и проверить. Но это время...

Я примеряюсь, реально-ли поюзать Solid C для написания спринтеровской части линка Sprinter<->PC. Чтобы шибко много времени не тратить. Мне для программы нужно: чтение входных параметров exe-файла; работа с файлами на диске (чтение и запись); вывод в консоль (printf, как я понимаю, уже есть?); асм-вставки с возможным юзанием дополнительного обработчика IM2 (чтобы с портом через прерывание работать).


07 Jan 2005 22:18
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Shiru Otaku wrote:
Интересует, насколько реально юзание сабжа. Есть вопросы. Скажем, что и как там с банками памяти? Программа может быть больше 16к (64к)? Как с asm-вставками? Как с прерываниями?


Могу ответить по части памяти. Как я понял ввиду того, что компилятор портировался с CP/M ни о каких банках памяти речи нет (во всяком случае стандартными средствами языка). Для больших данных можно использовать прямое переключение окон. Для большого кода можно заюзать DLL-либы. Так как libman может их рассовывать хоть по всей памяти Спринтера мы можем получить более чем достаточно памяти для кода.

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


08 Jan 2005 21:12
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 106 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6 ... 8  Next

Who is online

Users browsing this forum: No registered users and 5 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.