IBM PCjr

16-битные ПЦ-совместимые компьютеры с процессорами 8086/8088/80286 работающие под управлением ДОС

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

Vic3Dexe wrote:
Shaos wrote:Ну я могу конечно с сети стянуть FORMAT.COM для PC-DOS 2.10, однако не факт, что он с картриджа запустится - он же только для чтения, т.е. если COM использует тот же сегмент для изменяемых данных, то не полетит - надо чего-то хакать...
Так картридж виден как рамдиск или как кусок памяти?
Если как кусок памяти, то как с него вообще что-то запускать? :o
Как кусок памяти - биос видит по сигнатуре 55h, AAh что там что-то есть и после ребута запускает соответствующий init (если CRC правильный)

P.S. Мне сильно понравился момент, что картридж может иметь в себе несколько подменяемых имен DOS (например бейсик-картридж подменяет команды доса BASIC и BASICA) - но для этого надо DOS запустить откуда то :)
Я тут за главного - если что шлите мыло на me собака shaos точка net
Vic3Dexe
Doomed
Posts: 370
Joined: 16 Dec 2014 11:58
Location: Киев

Re: IBM PCjr

Post by Vic3Dexe »

Т.е. если я правильно понял, в картридж нужно запихнуть форматник, который умеет работать без доса, и, собственно, сам дос, дабы его слить на диск.
Сколько картриджа, 128к? Где он размещается в адресном пространстве? Остальной памяти сколько?
Попробую, но будет не быстро.
IgorR76
Senior
Posts: 102
Joined: 27 Jul 2015 15:20

Re: IBM PCjr

Post by IgorR76 »

Shaos wrote: вот тут интересный комментарий к функции 5 - interleave 1,5,2,6,3,7,4,8 (кстати а куда делся 9?):
Это просто пример, чтоб понятно было, как располагаются сектора на дорожке. Их же может и больше быть, если это HDD.
Если контроллер успевает читать и передавать сектора подряд - то можно форматить последовательно, дорожка будет читаться за 1 оборот диска. Если ж контроллер медленный - то нужен режим interleave, чтобы след.сектор шел с задержкой. Тогда дорожка читается за 2 оборота диска...
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

Vic3Dexe wrote:Т.е. если я правильно понял, в картридж нужно запихнуть форматник, который умеет работать без доса, и, собственно, сам дос, дабы его слить на диск.
Сколько картриджа, 128к?
Попробую, но будет не быстро.
В стандартный картридж вставляется в адресное пространство как 64кб ПЗУ (2 микросхемы по 32кб) - моя конструкция имеет место под одну микросхему 32кб, но теоретически ничего не мешает создать картридж скажем с 512кб ПЗУ с фиксированными первыми 32кб и переключаемыми вторыми 32кб (доп.логики не сильно много надо) - тогда можно много чего туда напихать, но придётся писать хитрый драйвер
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: IBM PCjr

Post by Lavr »

Shaos wrote:Как кусок памяти - биос видит по сигнатуре 55h, AAh что там что-то есть и после ребута запускает соответствующий init (если CRC правильный)
...
Мне сильно понравился момент, что картридж может иметь в себе несколько подменяемых имен DOS (например бейсик-картридж подменяет команды доса BASIC и BASICA) - но для этого надо DOS запустить откуда то :)
Так это ж, похоже, и есть ROM-BASIC.
Потому как BASICA - и есть его дисковый вариант.
iLavr
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

IgorR76 wrote:
Shaos wrote: вот тут интересный комментарий к функции 5 - interleave 1,5,2,6,3,7,4,8 (кстати а куда делся 9?):
Это просто пример, чтоб понятно было, как располагаются сектора на дорожке. Их же может и больше быть, если это HDD.
Если контроллер успевает читать и передавать сектора подряд - то можно форматить последовательно, дорожка будет читаться за 1 оборот диска. Если ж контроллер медленный - то нужен режим interleave, чтобы след.сектор шел с задержкой. Тогда дорожка читается за 2 оборота диска...
Так вот мне и непонятно как это согласуется с 9 секторами на дорожке? Девятый пойдет следом за восьмым ведь тогда? Или их тасовать можно как угодно?
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

Lavr wrote:
Shaos wrote:Как кусок памяти - биос видит по сигнатуре 55h, AAh что там что-то есть и после ребута запускает соответствующий init (если CRC правильный)
...
Мне сильно понравился момент, что картридж может иметь в себе несколько подменяемых имен DOS (например бейсик-картридж подменяет команды доса BASIC и BASICA) - но для этого надо DOS запустить откуда то :)
Так это ж, похоже, и есть ROM-BASIC.
Потому как BASICA - и есть его дисковый вариант.
В списке файлов PC-DOS 2.10 есть оба бейсика:

Code: Select all

BASIC    COM    16256  10-20-83  12:00p
BASICA   COM    26112  10-20-83  12:00p
однако вставленный бейсик-картридж перехватит оба вызова...

P.S. напомню, что ROM-бейсик (который Cassete) в PCjr тоже есть (он запускается, если нет ни дискеты, ни вставленных картриджей)
Я тут за главного - если что шлите мыло на me собака shaos точка net
IgorR76
Senior
Posts: 102
Joined: 27 Jul 2015 15:20

Re: IBM PCjr

Post by IgorR76 »

Или их тасовать можно как угодно?
Как угодно. Это только при форматировании делается. Дальше контроллер считывает номер сектора-и если он совпадает с требуемым-читает или пишет. Если нет-то просто ждёт нужного номера...
Vic3Dexe
Doomed
Posts: 370
Joined: 16 Dec 2014 11:58
Location: Киев

Re: IBM PCjr

Post by Vic3Dexe »

Shaos wrote:Так вот мне и непонятно как это согласуется с 9 секторами на дорожке?
Никак, ошибка там, если подходить строго. Вообще, как уже отметили, это просто иллюстрация "как можно".

Вопрос: как вообще предполагалось наполнять этот jr софтом? Если 5" один на всю квартиру, то как? Через картридж?
Но 32к в картридже это маловато, полезная нагрузка - один-два файла.
Может проще попробовать подоткнуть этот 5" к "современному" компу, у которого есть FDD-разъемы, и там наклепать дискет с чем угодно?
IgorR76
Senior
Posts: 102
Joined: 27 Jul 2015 15:20

Re: IBM PCjr

Post by IgorR76 »

Вот и я предлагаю подключить дисковод 5.25 от PCjr к ноуту с FreeDOS, разобрав внешний FDD 3.5... По распиновке дисководы ведь должны подойти.
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: IBM PCjr

Post by Lavr »

Vic3Dexe wrote:Вопрос: как вообще предполагалось наполнять этот jr софтом? Если 5" один на всю квартиру, то как? Через картридж?
А я не знаю, чего вы упёрлись в картридж...
COM-порт, на мой взгляд, вполне оптимальный вариант.
Я как-то с ноутбука, на котором был CD-ROM, прекидывал дистрибутив VBasic 5.0 на свой десктоп,
на котором не было CD-ROM-а, через RS-232 просто тремя спаянными на скорую руку проводками.
Это заняло почти сутки, но шаманства потребовало меньше всего...

Здесь, мне думается, ситуация фактически аналогична. Я только не знаю вариант этого ВАСИКА -
как он работает с памятью, поэтому подсказывать сильно не могу - но у Shaos-а есть же по нему мануал...
iLavr
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

Vic3Dexe wrote: Вопрос: как вообще предполагалось наполнять этот jr софтом? Если 5" один на всю квартиру, то как? Через картридж?
Но 32к в картридже это маловато, полезная нагрузка - один-два файла.
Может проще попробовать подоткнуть этот 5" к "современному" компу, у которого есть FDD-разъемы, и там наклепать дискет с чем угодно?
Предполагалось докупить дисков :)
Проблема в том, что PC-DOS 2.10 в оригинальной упаковке слегка дороговаты...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

Vic3Dexe wrote:
Shaos wrote:Так вот мне и непонятно как это согласуется с 9 секторами на дорожке?
Никак, ошибка там, если подходить строго. Вообще, как уже отметили, это просто иллюстрация "как можно".
Вот тут написано, что interleaving не несёт в себе никаких выгод для дискет и сектора могут идти просто подряд:
http://dankohn.info/projects/PromdiskIII/PCINTERN-chp14.pdf
Я тут за главного - если что шлите мыло на me собака shaos точка net
Vic3Dexe
Doomed
Posts: 370
Joined: 16 Dec 2014 11:58
Location: Киев

Re: IBM PCjr

Post by Vic3Dexe »

Shaos wrote:Вот тут написано, что interleaving не несёт в себе никаких выгод для дискет и сектора могут идти просто подряд:
Так и есть, хотя fformat вроде чего-то там переставляет и даже как-то это обосновывает.
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: IBM PCjr

Post by Shaos »

Shaos wrote:
Shaos wrote:А - так на PCjr кассетный бейсик - он ничего не знает про дискеты :)
хм, похоже бейсик, который на картридже ЗНАЕТ про дискеты!
только ему нужны уже отформатированные, чтобы можно было SAVE и LOAD делать
(это я листаю книжку по PCjr бейсикам, что только сегодня получил по почте)
Но чтобы он узнал про дискеты, надо стартовать сначала DOS с дискеты (хотя бы и с демо, где на COMMAND.COM система и заканчивается), потом стартовать BASIC (бейсиковский картридж перехватит эту команду, как я писал чуть выше) и только тогда он может обрабатывать SAVE/LOAD, показывать список файлов FILES и делать переход в систему через SYSTEM (а без доса он долго ждет и пишет "Device Timeout")...
Я тут за главного - если что шлите мыло на me собака shaos точка net