Важная информация

User Tag List

Страница 4 из 24 ПерваяПервая 12345678 ... ПоследняяПоследняя
Показано с 31 по 40 из 238

Тема: Самодельный комп на i8080

  1. #31
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman
    Интересно, откуда вы взяли, что у CP/M были организации секторов в группы (кластера?). Если я верно помню, то у CP/M в классическом виде сектор был 128 байт и только позднее каждый производитель наделал свои стандарты этой ФС, по которым сектор мог быть увеличен до 1 кб.
    Совсем не понял этот абзац. И терминология тоже неясная. Кластер это терминология из MSDOS и это совсем не то, что CP/M-группы. CP/M-группа это англоязычный термин, в отечественой литературе обычно это заменяют словом CP/M-блок. Иными словами, это минимально расходуемый фрагмент диска, и его используют для того, чтобы сократить число записей в каталоге.

    Под блоком понимается минимальный размер участка диска, который можно занять, т.е отметить занятым. Размер блока может быть 1, 2, 4, 8 или 16 килобайт. И так это было даже в самой первой CP/M версии 1.3. Таким образом, даже, если CP/M-файл имеет размер всего один логический сектор в 128 байт, то на диске всё-равно занимается целый блок.

    Физический сектор может быть увеличен или уменьшен до любого размера. Именно это и есть свойство CP/M, что позволило ей победить. CP/M вообще наплевать, как физически устроен диск и на размер физического сектора, тем более. BDOS работает через всего 2 подпрограммы - считать 128 байт и записать 128 байт. 128 байт называют логическим сектором, чтобы говорить, что CP/M имеет обмен логическими секторами. А BDOS занимает пространство диска с кратностью в блок, т.е в минимальном случае - это 8 логических секторов (1 кб).

    Исторически первым форматом дисков был формат дисковода ЭВМ MDS-800, что также применён в СМ-1800. Этот дисковод называется ЕС-5074 и имеет формат 77 треков, 26 физических секторов по 256 байт в каждом. Чем больше размер сектора, тем меньше пространства диска впустую тратится на межсекторные гапы. Поэтому у СИНКЛЕРА с секторами в 256 байт на диске всего 640 кб, в MSDOS с секторами 512 на диск влезает 720К, а у КОРВЕТА с секторами в 1024 байта размер диска 800 кб (а у MAC - 880 кб, т.к там 1 сектор на весь трек). ВГ93 не может иметь сектора большего размера, а вот РК-КНГМД может иметь 1 сектор на весь трек. За счет чего ёмкость увеличивается на 20%).

    Цитата Сообщение от Sayman
    У ПРОФИ - диск DD, 160 треков, 5 секторов на трек, сектор 1024 байта.
    Это обычный формат. Он у всех компьютеров с контроллером от КОРВЕТА. Гораздо сложнее найти компьютер, у которого был бы иной формат.

    Цитата Сообщение от Sayman
    корень диска это список юзеров от 0 до 15
    В CP/M нет корня диска. А если есть, то это не CP/M.

    Цитата Сообщение от Sayman
    у Вадима была своя версия DOS изначально полностью совместимая с CP/M, но с FAT в качестве ФС.
    FAT это не файловая система, хотя иногда ошибочно так говорят. FAT это область на диске.

    Если есть FAT, то это файловая система MSDOS. И она "полностью совместима с CP/M" никак быть не может. Только частичная совместимость, хотя для многих программ этого хватает. Если есть FAT, то значит не строится Allocation Table и часть функций BDOS не работают. Такая ДОС по работе дисководных функций близка к MSX-DOS. В MSX-DOS 1.0 (1984), как и в MSDOS 1.0, не было подкаталогов, хотя уверен, что изначально они были задуманы, т.к без подкаталогов формат MSDOS с FAT даёт лишь небольшой выигрыш (за счёт того, что не надо строить в ОЗУ Allocation Table).

    А вот введение подкаталогов, отчего каталоги нижнего уровня размещены в файлах, для винта даёт существенный выигрыш, т.к для поиска файла, не надо сканировать общий каталог размером в 200 кб. Но FAT, т.к он один для всего диска, при больших дисках имеет очень большой объём (обычно сколько мегабайтов, столько килобайтов FAT) и тем самым, или TPA для 8-ми разрядки становится маленьким или надо сканировать FAT по кусочкам, что также тормозит.

    Речи о гигабайтных дисках для 8-ми разрядки - это просто сказки для дураков. Такого в природе не бывает.

    Цитата Сообщение от Sayman
    CP/M софт не умеет работать с каталогами, каждый каталог для CP/M софта выставлялся как текущий, грубо говоря, юзер. Это сильно накладывало ограничения на работу с софтом, но зато было проще хранить, т.к. был винт и FAT16.
    Смысла абзаца не понял. Возможно Вы пытались сказать, что, т.к CP/M работает только с юзерами, то какими-то средствами чтение/запись секторов каталога, заменялось на чтение/запись файла подкаталога, отчего CP/M работала с файлами подкаталога, как с юзером CP/M. Так и должна работать MSX-DOS 2.0.

    Цитата Сообщение от Sayman
    TPA в 58 кб - это реальность
    Не для базовой CP/M 2.2. Это другая ДОС на основе BDOS CP/M. Понятно, что основная часть кода ДОС в другой банке. Но больший размер TPA оплачивается быстродействием, т.к считанные данные приходится пересылать из банки в банку.

    Цитата Сообщение от Sayman
    У "Спринтера" TPA в 4 метра. Если в CP/M размер COM-файла ограничен размером TPA, то у DOS на "Спринтере" нет такого ограничения, EXE-файл может быть хоть 100 мб.
    Это не CP/M. ОЗУ в других банках, это не TPA, это просто какое-то ОЗУ. Если так считать, то в ОРИОНЕ с 256К, TPA в CP/M - тоже большое, но это же не так. TPA это только то, что в адресном пространстве DOS. Незачем грузить COM-файл в другие банки. Для больших файлов в CP/M грузят оверлеи или организуют "сокеты" для динамической подкачки кусков кода. И если есть RAM-диск и оверлеи подгружаются оттуда, то это ничуть не тормозит. Если бы был компилятор ЯВУ, что поддерживает банки ОЗУ, тогда это имело бы смысл, т.к для кода созданного ЯВУ как раз не хватает объёма TPA. Без этого от излишнего ОЗУ польза только для организации эл.диска.

    Цитата Сообщение от Sayman
    MSX-DOS. Во-первых, есть исходники. Во-вторых, есть куча документации по этой ДОС и есть весьма не маленькое комьюнити на msx.org.
    Естественно, когда начинаешь искать что-то по MSX, то находишь кучу сайтов про MSX-компьютер. Но где исходники? Чтобы писать, что где-то есть - дайте ссылку на скачивание исходника.

    Цитата Сообщение от Sayman
    Сама MSX-DOS явно писалась под впечатлением от MSDOS и она сильно на неё похожа
    Естественно. Её писал тот же Тим Паттерсон, что написал MSDOS. Он написал её по заказу Microsoft за 3 месяца 1984-го за 200.000 USD. Но он написал только MSX-DOS 1.0, где нет подкаталогов. Подкаталоги ввела уже сама фирма Microsoft 4 года спустя (видимо тогда на 8-ми разрядках появились винты и стали актуальны подкаталоги).

    Все функции MSX-DOS для КР580 реализовал в 1997 С.Коровкин. Он сначала хотел написать полноценную ДОС с форматом MSDOS. Но в итоге сделал только программу обмена файлами между MSDOS и ОЗУ (под ОЗУ имею ввиду ORDOS, т.к по сути это тоже самое). Но он говорил мне, что он реализовал все функции нужные для MSDOS. Так что желающие могут дизассемблировать и получить нечто подобное MSX-DOS.

    Цитата Сообщение от Sayman
    Что за маленькие каталоги? Почему они маленькие? Скажем 256 или 512 файлов на каталог, это много или мало? Или они маленькие по объёму в байтах?
    Я писал о маленьких каталогах безотносительно к их размеру, а чтобы сказать что есть не один общий каталог винта в 200 кб, а он разделен на много частей, со средним размером в 4 кб и числом экстентов до 256 (или даже 128). Поэтому поиск в подкаталоге занимает не 10 секунд, а 1 секунду.

    Так сделано в моей TURBO-DOS. Там на части разбивается не только общий каталог, но и само пространство диска. При организации подкаталога, для него сразу выделяется сплошной кусок диска. В начале этого куска есть свой каталог. Для корневого каталога (корневого диска) все блоки входящие в подкаталог заняты. Но программе, находясь в подкаталоге не приходится работать с огромным каталогом. Она работает с маленьким каталогом. А с учётом того, что работа идёт не логическими секторами, а физическими и нет ненужных копирований, то скорость с винтом получается в 20 раз больше, чем в CP/M. Однако, если выделенное при создании подкаталога место закончилось, то для увеличения размера области для файлов в подкаталоге нужна специальная программа (освобождающая блоки за концом области выделенной подкаталогу). Но даже такая структура диска намного лучше, чем жёсткое разбиение винта на кучу мелких партиций, т.к такие подкаталоги можно оперативно создавать и удалять. В этой ДОС для больших файлов в каталоге не создаётся моря экстентов, как в CP/M, причём при сохранениии дефрагментации файлов, а размер блока - разный для разных файлов. Не знаю, поняли ли идею, но не важно.

    При ускорении CP/M надо решить 3 задачи (но почти всё это полностью или частично лишает совместимости с CP/M)

    - замена работы логическими секторами на физические
    - устранение построения Alloccation Table (хранение её в готовом виде)
    - разбиение общего гигантского каталога на много маленьких подкаталогов

    Вариант использования структуры диска MSDOS я не рассматривал, т.к мне интересно было сделать что-то своё. К тому же я не уверен, что из-за низкой скорости CPU и малости ОЗУ, эта идеология лучшая для 8-ми разрядки. Совместимость с CP/M меня не волновала, т.к я давно убедился что от ЯВУ пользы нет.

    Цитата Сообщение от error404
    была неудачная реализация в прошлом... надо еще раз попробовать.
    Желательно попробовать, но я сомневаюсь, что можно что-то ускорить без ПДП.

    Посмотрел свои старые листинги CP/M-BIOS винчестера и хотя ничего уже не понял, но всё-же увидел, что приняты меры ускорения (линейные участки для чтения-записи в одной итерации цикла сразу 16 байтов). Цикл чтения из флоповода существенно проще и короче. Поэтому так и должно было получиться, что скорость обмена вдвое ниже, чем с контроллером НГМД на ВГ93.

    Во вложении привожу include-файл c подпрограммами для винта (петли чтения-записи это метки: 're_loo' и 'wrs_loo'). В 1990 я видел американский CP/M компьютер с винчестером и он тоже был тормозной.

    Цитата Сообщение от error404
    Максимальный размер диска для CP/M, если мне не изменяет память, - 1 гигабайт, а максимальный размер файла - 4 Mб.
    Максимальный размер диска определяется максимальным размером блока (16 кб) умноженным на 65536 (номер блока двухбайтовый). Т.о это 1 Гб, т.е тут память не подвела. Максимальный размер файла определяется максимальным числом байтов описываемый одним экстентом умноженным на максимально допустимое число экстентов. В одном экстенте описывается 8 блоков по 16 кб. Указатель номера экстента (RC) может быть до 128. Итого максимальный размер файла: 8 * 16 кб * 128 = 16 мб.

    Цитата Сообщение от error404
    кластеров под каталог можно отвести до 16 штук - умножьте сами
    16 блоков по 16 кб каждый, дают размер каталога в 256 кб. Такой каталог при реальных скоростях CPU будет сканироваться до минуты. При построении Allocation Table сканируется весь каталог в 256 кбайт, что займёт 1 минуту. То же самое произойдёт, если дать DIR. При запуске файлов, если файлов мало, то поиск будет быстрый. Но если ошибиться и задать имя файла, которого нет, то тоже будет сканироваться весь каталог целиком, и система будет читать каталог целую минуту. Будет ли такая система приемлемой?

    Раз у Вас есть CP/M для винта и есть мнение, что она сохранится быстрой и при больших дисках, давайте узнаем, сколько будет читаться каталог в 256 кб. Для этого скопируйте файл размером в 256 кб и засеките время копирования. Результат не надо делить пополам, т.к CPU тратит время не только на само считывание, но и на просмотр экстентов. А при копировании просматривается весь каталог целевого диска в поиске есть ли файл с таким же именем. А затем строится Allocation Table целевого диска. В итоге копирование одного файла займёт ~3 минуты.
    Вложения Вложения
    Последний раз редактировалось barsik; 27.11.2017 в 19:16.

  2. #31
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #32
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    barsik, давайте называть вещи своими именами, без всякой тавтологии.
    Кластер это терминология из MSDOS
    кластер = объединение чего-либо в одну группу. В англоязычной технической терминологии эта группа названа была кластером. CP/M не русское изобретение. Если заглянуть в мануал (я сейчас расковырял старые архивы с мануалом на фс cp/m). понятие кластера там есть. А все остальные названия это уже наши извратили.
    Гораздо сложнее найти компьютер, у которого был бы иной формат.
    ничего сложного. У эппла у МС и у всяких комодоров свои размеры секторов были. вариаций целое множество. даже ждрайвер где-то у меня валялся под мс дос подключающий реальные цпм дискеты. в качестве параметров надо было указывать и размер сектора. там и шаблоны были. штук 20 наверное разных.
    В CP/M нет корня диска. А если есть, то это не CP/
    серьёзно? т.е. прочитав у дискеты 0й сектор я корень диска не найду? и то, что "юзера" это не физическое. а логическое представление тоже фигня? вот открыл я сейчас 0 сектор дискеты. первый же байт у файла указывает на принадлезность к юзеру. при этом все файлы от всех юзеров лежат к одном физическом каталоге. а разделяются на юзера этим первым байтом (смещение 0 грубо говоря).
    Поле 1 содержит номер USER области к которой относится данный файл или 0E5h, если данный экстент не используется.
    поэтому корень он и в Африке корень. корень, он же рут. есть и на мсдос диске и на ufs и на многих других.
    FAT это не файловая система, хотя иногда ошибочно так говорят. FAT это область на диске.
    FAT = File Allcation Table. Но МС сами назвали свои ФС как fat12, fat16 и fat32 соответственно по 12 бит, 16 бит и 32 бита этой самой таблицы. не надо придираться к словам.
    Если есть FAT, то это файловая система MSDOS. И она "полностью совместима с CP/M" никак быть не может.
    где я писал про совместимость между ФС? я написал про совместимость на программном уровне. или вы наивно полагаете, что для того же m80.com обязателен цпм диск для работы? я вас уверяю, это не так. проблемы возникают только в тех случаях, когда программа начинает напрямую залезать в каталог диска и пытаться самостоятельно разбирать структуру каталога.
    Но больший размер TPA оплачивается быстродействием
    может быть. но не забывайте. что оригинальная цпм2.2 не очень то быстра при своих габаритах. её иные реализации отличаются как комфортом, так и производительностью. В описанном мной случае, дос просто в разы быстрее, чем классическая цпм. особенно при работе с дисками. ничего про другие аналоги этой ос (цпм) на других машинах сказать не могу. Хотя вот помню роботрона я гонял как то. не был впечатлён производительностью после профинского доса.
    есть не один общий каталог винта в 200 кб
    ну вот если откунить тут всякие нтфс, фат32 и прочие сильно крутые фс, а посмотреть, скажем, на фат16, то при размере раздела в 2гига, размер рута в 512 файлов = 16384 байта ровно или 32 сектора. про какие 200кб для рута идёт речь? осоебнно если говорить про дискеты, там размер каталога ещё меньше.
    сколько будет читаться каталог в 256 кб
    для того чтобы это узнать, в него нужно запилить 8192 файла. я даже если винду десятую всю перетащу в 1 каталог, столько файлов не наберу (наверное)))))

    кстати, можно ещё вспомнить про совместимость мсдос со старым софтом для цпм-86. но это фигня и к нам не имеет никакого отношения.
    Последний раз редактировалось Sayman; 11.02.2017 в 11:05.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  4. #33
    Guru Аватар для Vadim
    Регистрация
    24.07.2008
    Адрес
    г. Курган
    Сообщений
    2,062
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Физический сектор может быть увеличен или уменьшен до любого размера. Именно это и есть свойство CP/M, что позволило ей победить.
    не до любого, а кратного числу в степени 2. 256, 512, 1024 итак далее

    Вы писали о MSXDOS v1, которая имеет один каталог в системе FAT, и работает только с дискетами. Т.е. всё остальное чушь и бред. Каких "маленьких каталогов"? Вы перепили что ли? Перестаньте постить бред.

    - - - Добавлено - - -

    Цитата Сообщение от Error404 Посмотреть сообщение
    Максимальный размер диска для CP/M 2.2 ЕМНИП - 1 гигабайт, а максимальный размер файла - 4Mб
    Откуда эти данные? Из памяти мозга?, что отложилось? Это неверные сведения, советую освежить знания и не вводить в заблуждения других людей.
    Последний раз редактировалось Vadim; 11.02.2017 в 09:35.

    Скрытый текст

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  5. #34
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vadim Посмотреть сообщение
    Откуда эти данные? Из памяти мозга?, что отложилось? Это неверные сведения, советую освежить знания и не вводить в заблуждения других людей.
    Эти данные из исходников CPM 2.2, освежить их может любой из вложения этого поста, рекомендую заблуждающимся, я это делал не далее как полгода тому назад при помощи b2m, который нашел ошибку в BDOS 2.2 из-за которой файлы были ограничены в размере до 512кб при теоретическом размере в 4Мб (или 8Мб? вот тут я уже забыл) по ссылке до поста и после поста идут расчеты b2m. И после того как я исправил процедуру вычисления кластера (=группы) с 16 бит до 24 бит (заменив 16 битное сложение Килдалла 24 битным умножением) максимальный размер файла прекрасно стал обрабатываться, т.к. это не дефект модели, в косяк реализации обсчета в коде.

    Это что касается файла. Размер же файловой системы всегда корректно работал, и до вышеописанных правок, с момента подключения HDD, я систем менее 32мб и не использовал, 64Мб также использовал и не вижу причин почему не будут работать бОльшие (в коде ограничений нет, я всего лишь экономлю место в TPA для буфера ALV). Миф про 8Мб я узнал уже позже - тут на форуме (кстати, может путаница из-за заявленного ограничения в размере файла? как раз такого же). Ограничение в 8Mb ЕМНИП было только для CP/M 1.х, уже в 2.0 (который сейчас и не найти, у всех 2.2 и выше) структуры были переписаны для поддержки 1Гб.

    Кстати, учитывая что Килдалл писал BDOS CP/M на PL/M где есть только 2 типа int8 и int16, можно понять откуда растут ноги у этого бага с размером файла (или фичи - как посмотреть)

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Раз у Вас есть CP/M для винта и есть мнение, что она сохранится быстрой и при больших дисках, давайте узнаем, сколько будет читаться каталог в 256 кб. Для этого скопируйте файл размером в 256 кб и засеките время копирования. Результат не надо делить пополам, т.к CPU тратит время не только на само считывание, но и на просмотр экстентов. А при копировании просматривается весь каталог целевого диска в поиске есть ли файл с таким же именем. А затем строится Allocation Table целевого диска. В итоге копирование одного файла займёт ~3 минуты.
    Договорились. Но не очень скоро (я пока попаять собрался немного). Рано или поздно я все равно собирался делать что-то подобное для тестирования различных схем SD-карт. Правда, там я бы тестировал "сырое" (посекторное) чтение, ну добавлю еще и через BDOS. Но опять же есть ньюансы - в моей реализации CPM ядро ОС сидит в одной странице ОЗУ, а TPA - в другой (ради размера TPA в 58к, да код самой ОС очень вырос по размеру доработками), и соответственно любое чтение сопровождается межстраничной пересылкой, что, вангую, даст существенную погрешность.

    Пока же могу только впечатлениями поделиться времен 2007 года (когда я первую СompactFlash на реале в схеме IDE 8255 тестировал - изначально не самой быстрой реализацией IDE) - на чтение с файловой системы в 32Мб (и с кластер=блок=8кб) работало вдвое быстрее дисковода (800кб, кластер=блок=2кб). Дальше уже только в эмуляторе. BIOS работы с дисководом цельнотянутый с Altair-DOS v 1.6 А.Балдина с буфером сектора в 2кб (читает 2сектора по 1024 за раз), это была самая быстрая реализация что нам попадалась в прошлом веке (а к нему наверное попала от ACPM? и там и там сходство в обработке HD-дискет). Поэтому и преемственность в названии, и вообще некоторая идеологическая преемственность ("шлюзы", как и подкаталоги и многое другое, я правда убрал или заменил другим функционалом, слишком не абстрактно и платформеннозависимо). BIOS работы с IDE - мой самописный с буфером сектора в 512байт (читает 1 сектор с IDE за раз), тоже там особо не заоптимизируешь. Так что если субъективно, я не отношу разность скорости к влиянию BDOS/BIOS, а скорее зависит от скорости носителя.
    Последний раз редактировалось Error404; 11.02.2017 в 11:42.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  6. #35
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    оторый нашел ошибку в BDOS 2.2 из-за которой файлы были ограничены в размере до 512кб
    ойли? ошибка ли это или такова была задумка авторов?
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  7. #36
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,407
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    599
    Поблагодарили
    445 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Sayman,

  8. #37
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    ойли? ошибка ли это или такова была задумка авторов?
    Если бы это был мой код, то такого рода у меня именно ошибки по недосмотру, а не задумки. Также непохоже на задумку выглядит разервирование в описателе файла места под определенный размер, а в коде нечто странное (*****коде кстати, не математика там а "а ну ка я вот так выкручусь чтобы не умножать нормально" у нас там по этому поводу с b2m даже дебаты были в треде по ссылке выше - в смысле *****код или нет, а не про ошибку: на счет ошибки оба согласны)

    - - - Добавлено - - -

    И опять же, это граничение файла, а не максимального размера файловой системы. И опять же я говорю только за v2.2 и выше. Также я находил на зарубежном форуме тред где люди спорят с примерами с реалов: один пишет у меня файл режется по границе 512кб, а второй "у меня нормально, никогда такого не видел". У обоих CPM 2.x

    - - - Добавлено - - -

    Т.е. видимо этот баг ранее находили и фиксили, мы с b2m прошли уже по костям предшественников.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  9. #38
    Guru Аватар для Vadim
    Регистрация
    24.07.2008
    Адрес
    г. Курган
    Сообщений
    2,062
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Эти данные из исходников CPM 2.2, освежить их может любой из вложения этого поста, рекомендую заблуждающимся, я это делал не далее как полгода тому назад при помощи b2m, который нашел ошибку в BDOS 2.2 из-за которой файлы были ограничены в размере до 512кб при теоретическом размере в 4Мб (или 8Мб? вот тут я уже забыл)
    Советую почитать доки по ЦПМ, и там англ. по белому написано, как работают функции чтения. Последовательного и произвольного. Из них следует, что рзамер файла ограничивается 8Мб. Размер устройства конечно нет, там ограничения иные. Сейчас я не вспомню, но если посмотреть описание BIOS для CP/M - и просто помножить значения то всё прояснится.

    Скрытый текст

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  10. #39
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vadim Посмотреть сообщение
    Советую почитать доки по ЦПМ, и там англ. по белому написано, как работают функции чтения. Последовательного и произвольного. Из них следует, что рзамер файла ограничивается 8Мб. Размер устройства конечно нет, там ограничения иные. Сейчас я не вспомню, но если посмотреть описание BIOS для CP/M - и просто помножить значения то всё прояснится.
    Советую меньше советовать, и вообще быть добрее.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  11. #40
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Error404, а теперь посмотри на это с другой стороны. ты говоришь - фирменная ошибка, я её пофиксил. ОК. ты пилишь файло по новым правилам (после исправления) и волшебным образом это файло не читается на других машинах с другими вариантами bdos`а, включая фирменную реализацию.
    поэтому это ошибкой назвать сложно.
    про ограничение в 512кб на профике точно такого не было, но и про гигабайты там речи тоже нет. а ты говоришь про гигабайты.
    Последний раз редактировалось Sayman; 11.02.2017 в 12:04.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

Страница 4 из 24 ПерваяПервая 12345678 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. PMI-80 - одноплатник на i8080
    от rw6hrm в разделе Разное
    Ответов: 72
    Последнее: 02.09.2022, 12:27
  2. Самодельный комп на х386 и выше. Обсуждение
    от Ghost в разделе Разработка электроники
    Ответов: 26
    Последнее: 10.04.2019, 01:38
  3. Мнемоники i8080 vs Z80
    от Vladimir_S в разделе Разное
    Ответов: 153
    Последнее: 20.12.2016, 13:02
  4. Квадратный корень на i8080
    от shoorick в разделе Разное
    Ответов: 31
    Последнее: 25.08.2016, 14:04
  5. Эмулятор i8080
    от Higgins в разделе Разное
    Ответов: 2
    Последнее: 20.05.2011, 11:43

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •