Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Запасной форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Список прикрепленных файлов
Сортировать по , вывести по
файлов на страницу тем на странице
Страницы: 1 2 3 4 5 ... 132 133 134 135 136 137 138 139 140 141 142
Имя файлаТекст сообщенияТемаРаздел
xtata.gif

Размер: 1226620, скачан: 32
Тип:
Дата: 8 мая 2014 23:34
Приблизительная схема "XT IDE" части. Для выборки BIOS - отдельные микросхемы.
Контроллер XT IDE WD IBM PC-совместимое. До 2000 года включительно
IDEXTWD2.BIN

Размер: 8192, скачан: 26
Тип:
Дата: 8 мая 2014 19:31
Купил я такой вот контроллер:

Модель определить не смог. Больше всего он поход на WDXT-150, но тот - одноканальный, а тут вроде как два канала.
Ссылка на образ ПЗУ: http://gfile.ru/a4Vnv. И ниже я прикрепил его к сообщению.
Так вот, он прекрасно видит винчестер AT/XT - ST351A/X.
Но по мануалу на винчестер, перемычками можно определять размер Full (40Mb), 30Mb и 20Mb. У меня же в этих положениях видится 26Мб, 26Мб и 20Мб.
Если модель действительно WDXT-150, то контроллер рассчитан на винты до 8h/1024tr, т.е. должен видеть весь мой винт. Но видимо модель контроллера другая и в этом причина того, что видятся только 26мб? Или все же надо попасть в BIOS. Никакого входа из Debug-а в BIOS я не нашел, но вход должен быть, т.к. в текстовом редакторе видятся разнообразные текстовые менюшки. Начало ПЗУ по адресу CA00. Вход CA00:5 или :3 никуда не ведет, а четные смещения не похожи на JMP.
И что-то я задумался - а зачем такие контроллеры вообще? И стоят дохрена денег. И всего 26Мб с винта. Ну или 40Мб. А ведь с соответствующего тому времени винта MFM, можно было получить 100Мб... Не то, чтобы огорчился покупке, но ... типа того.
(Позже: умножил 8h x 1024t x 17s и получил 63Мб - да вполне адекватный максимальный размер винчестера для этого контроллера. Как развитие технологии и переход от MFM к IDE - не плохо, но время ХТ тогда уже прошло).
Контроллер XT IDE WD IBM PC-совместимое. До 2000 года включительно
TXT_TAPE.ZIP

Размер: 809474, скачан: 39
Тип:
Дата: 2 мая 2014 21:20
SoftCat написал:
[q]
Тогда поясните, пожалуйста, поподробнее, зачем Вам потребовался байт FFh в начале бинарного файла на Бейсике?
[/q]
FFh потребовался не мне, а Бейсику, чтобы он бинарник, созданный wav2cas'ом из wav'ки, мог принять за родной дисковый файл и адекватно загрузить с диска. Драйвер здесь не при чем. FFh был добавлен не драйвером, а hex-редактором. Драйвер не пишет в файл то, чего там изначально не было.

SoftCat написал:
[q]
Чем именно (при чтении бинарного файла на Бейсике) Ваш драйвер отличается от драйвера Профессора Лампочкина?
[/q]
С точки зрения конечного результата (чтение файлов) - ничем, как для бинарников, так и для других типов. А вот на уровне кода есть разница в способе опознавания битов на ленте. У Лампочкина и у разработчиков "Поиска-1" минимальная продолжительность бита вычисляется адаптивно. А у меня (и у айбиэмовцев) она тупо сравнивается с константой. Вот, мне и было интересно, как это будет работать, особенно на советских магнитофонах с их коэффициентом детонации. Опыты с "ИЖ-306С" показали, что разницы нет.

Драйвер Лампочкина не может работать на XT. А мой, как показал uav1606, по крайней мере, писать может (чтение пока не проверяли). В перспективе это позволит добавить поддержку каасетных фунций от "Поиска-1" в "Поиск-2" (а кассетный интерфейс PC / PCjr можно добавить хоть сейчас, если собрать входные-выходные цепи и загрузить мой драйвер).
Моя прога не критична к базовому адресу LPT. Этот адрес может принимать самые идиотские значения, лишь бы он соответствовал реально установленному устройству. У Лампочкина адрес LPT фиксированный - 378h. Я ради смеха ставил в BIOS setup LPT1 как 378H, 278H или вообще "Disabled". Во всех случаях мой драйвер работал корректно (при нулевом базовом адресе он, понятно, не загружался).

О записи текстов на кассету.

Сегодня провел очередной эксперимент.
Во вложении:
TXT2CAS.BAS – прога на Бейсике, копирующая текст с диска на кассету;
CAS2TXT.BAS - копирование текста с кассеты на диск;
BYKOV.TXT – текст на диске;
BYKOV.WAV - аудиопоток на кассете.

TXT2CAS “на лету” по строкам копирует текстовый файл с диска на кассету. Прога ничего не знает о длине этого файла. Если бы копирование было с диска на диск, то тактика была бы понятной: записать строку в целевой файл, увеличить размер файла в FAT на длину этой строки, потом записать следующую строку, снова обновить FAT и т. д. (как вариант - обновить размер один раз, при закрытии целевого файла). А при записи на кассету Бейсик при всем желании не может отмотать ленту назад и скорректировать длину в заголовке. Поэтому логично предположить, что для текстовых данных в заголовок пишется какое-то фиктивное значение длины, которое реально (при загрузке) не используется.
Я записал текст на кассету, оцифровал запись и прогнал wav’ку через wav2cas. Трониксовский wav2cas, как это и следовало ожидать, глюкнул.

Tronix написал:
[q]
Ну у меня там в проге какой-то глюк вроде на тему размера был, щаз уже не помню точно, ибо год назад писал. Возможно проявляется только на таких маленьких файлах (> 512 байт) и возможно только на васике.
[/q]
А длина образца текста была почти 2 килобайта. И Васиком там и не пахло - это был литературный текст, а не Васик программа. Значит, глюк связан не с малой длиной, а с неверным ее определением в принципе. Выходит, что для данных типа 00 и 40 длина берется не из заголовка, а вычисляется анализом самих данных. Вероятно, там ищется какой-то признак конца файла (это или 4 нуля подряд, или 1AH / Ctrl^Z) и по положению этого признака находится длина.

Так что, есть смысл заняться реверс-инженирингом Бейсика…
Кассетный интерфейс IBM PC-совместимое. До 2000 года включительно
uplframe.php

Размер: 1457, скачан: 25
Тип:
Дата: 2 мая 2014 16:16
Ну, я им особо и не пользовался.
Если уж цеплять хостинг картинок к "Призракам", то нужно либо на том же хостиге, что и сами "Призраки", либо на каком-то нормальном платном.

По поводу картинок - можно сказать, что работа по подключению движка картинок практически завершена.

Что сделано:

1. Я перевёл движок MultiHost на кодировку 1251, чтобы была та же, что и тут.
2. Сделал то, о чём мы говорили - теперь если размер изображения больше 800х600 или больше 100 КБ (п. 3.5.2 правил форума), то вставляется превьюшка, если меньше - само изображение.

Кроме этого, в движок нужно добавить файл upload2.php, который осуществляет "бесшумную" загрузку через форму редактирования сообщения.
Может, выложить этот модифицированный движок здесь? Он же GNU и т.п.? Ну или через личку скину желающим потестировать.

После стандартной установки модифицированного движка ещё необходимо в upload2.php прописать переменную $forum_url (в самом начале файла), она должна ссылаться на размещение форума, куда добавляется работа с картинками, т.е. что-то вроде $forum_url="http://www.phantom.sannata.ru/forum/";

Далее нужно кинуть в корневую папку форума Intellect Board файл uplframe.php (см. вложение).
В нём нужно прописать переменную $base_url (в начале файла) - она должна указывать на размещение хостинга картинок, сейчас, к примеру, она выглядит так:
$base_url="http://dgrade.rurs.net/images/";
Там же, при необходимости, можно поменять ссылку на основной CSS (сейчас это http://www.phantom.sannata.ru/...blue.css).

Далее нужно модифицировать файлы форума \styles\abstract\display.php и \styles\abstract\stdforum.php
А именно: нужно найти там строку common_post($pdata,MSG_p_text);?>
и до неё добавить (в оба файла) следующее:


///////////
?>
>tr>>td>Загрузить картинку:>td>
>iframe id="frame22" allowtransparency="yes" frameborder="0" scrolling="no" src="uplframe.php" marginheight=0 vspace=0 hspace=0 marginwidth=0 style="height: 20px; width: 100%;" name="frame">Ваш браузер не поддерживает технологию iFrames.>/iframe>
>?
///////////


Т.е. было:

display.php


...
>form style="margin: 2px 0" action="index.php" method=POST name=postform enctype="multipart/form-data" onsubmit="return checkform(this);">
>table class="innertable" width="100%" cellspacing=1>>tr>>td class="tablehead" colspan=2>>?=$outmsg;?>
>? if ($GLOBALS['inuserid']==1) quick_login_form();
if ($GLOBALS['opt_posttitles']) { ?>
>tr>>td>>?=MSG_p_title;?>:>td>
>input type=text tabindex=3 name=p_title size=30 maxlength=64 value=">?=$pdata['p_title'];?>">
>? }
common_post($pdata,MSG_p_text);?>
>tr>>td>
...


Стало:


...
>form style="margin: 2px 0" action="index.php" method=POST name=postform enctype="multipart/form-data" onsubmit="return checkform(this);">
>table class="innertable" width="100%" cellspacing=1>>tr>>td class="tablehead" colspan=2>>?=$outmsg;?>
>? if ($GLOBALS['inuserid']==1) quick_login_form();
if ($GLOBALS['opt_posttitles']) { ?>
>tr>>td>>?=MSG_p_title;?>:>td>
>input type=text tabindex=3 name=p_title size=30 maxlength=64 value=">?=$pdata['p_title'];?>">
>? }

///////////
?>
>tr>>td>Загрузить картинку:>td>
>iframe id="frame22" allowtransparency="yes" frameborder="0" scrolling="no" src="uplframe.php" marginheight=0 vspace=0 hspace=0 marginwidth=0 style="height: 20px; width: 100%;" name="frame">Ваш браузер не поддерживает технологию iFrames.>/iframe>
>?
///////////


common_post($pdata,MSG_p_text);?>
>tr>>td>
...


stdforum.php

Было:


...
>input type=text name=pl_text[>?=$i;?>] size=30 maxlength=80 value=">?=$pdata['votevar'][$i];?>">
>? }
}
if ($GLOBALS['opt_posttitles']) { ?>
>tr>>td>>?=MSG_p_title;?>:>td>
>input type=text tabindex=3 name=p_title size=30 maxlength=64 value=">?=$pdata['p_title'];?>">
>? }
common_post($pdata,MSG_p_text);?>
>tr>>td>
...


Стало:


...
>input type=text name=pl_text[>?=$i;?>] size=30 maxlength=80 value=">?=$pdata['votevar'][$i];?>">
>? }
}
if ($GLOBALS['opt_posttitles']) { ?>
>tr>>td>>?=MSG_p_title;?>:>td>
>input type=text tabindex=3 name=p_title size=30 maxlength=64 value=">?=$pdata['p_title'];?>">
>? }


///////////
?>
>tr>>td>Загрузить картинку:>td>
>iframe id="frame22" allowtransparency="yes" frameborder="0" scrolling="no" src="uplframe.php" marginheight=0 vspace=0 hspace=0 marginwidth=0 style="height: 20px; width: 100%;" name="frame">Ваш браузер не поддерживает технологию iFrames.>/iframe>
>?
///////////



common_post($pdata,MSG_p_text);?>
>tr>>td>
...


Выглядит это всё примерно так:

Нажимаем "Обзор", выбираем картинку, жмём "Загрузить":




Должна появится надпись: "Файл успешно загружен", а в поле редактирования сообщения должен добавиться BBCode изображения. Дальше мы можем набирать ещё какой-то текст, опять нажать "Обзор", "Загрузить" и т.д.:



Кнопка "Расширенная загрузка" вызывает стандартную форму загрузки изображений MultiHost в отдельном окне. Там можно предварительно посмотреть загруженную картинку, выбрать код, который вы будете вставлять, и т.п. BBCode при этом автоматически в форму редактирования сообщения не вставляется.

Можете это всё сами попробовать, логин/пароль - user/pass (или можете зарегистрироваться под другим):

http://someforum.e3w.ru/forum//index.php?t=3

Работа проверена под Опера 7.22, IE 6, Mozilla Firefox 2.0.0.7.

P.S. wdfm, спасибо за движок.
Модификации движка Железные призраки прошлого
RWCAS.ASM

Размер: 5093, скачан: 43
Тип:
Дата: 2 мая 2014 0:05
SoftCat написал:
[q]
Может быть для текстовых файлов на Бейсике длину надо как-то корректировать?
[/q]
Во вложении – процедуры чтения/записи файлов на кассету от «Поиска-1». Там, помимо всего прочего, есть описание кассетного заголовка. Особо хотел бы обратить внимание на примечание:
[q]
«Длина записанной в файл информации, значения сегмента и смещения адреса (поля заголовка A-F) запоминаются в заголовке только для файлов типов 01, 80 и А0
[/q]
01 – это исполнимый бинарник; 80 – сжатая Бейсик-прога; A0 – защищенная Бейсик-прога. А прога в виде ASCII текста имеет тип 40. То есть, по идее, для него длина должна браться не из заголовка, а каким-то другим образом. Теперь понятно, почему wav2cas глючит, причем именно на этом типе данных.

Кстати, неплохо бы узнать, как в этом случае находится длина. Первое, что мне пришло в голову – это следующий алгоритм: считывается с ленты 256-байтный блок, в нем ищется какой-то маркер конца файла (рискну предположить, что это четыре идущие подряд нулевых байта). Если маркер найден, значит, файл считан до конца. Если нет – загрузить с ленты следующие 256 байт и повторить поиск, и т. д.
Хотя об этом Бейсик было бы хорошо спросить: можно попробовать выловить и дизассемблировать процедуры работы с кассетными файлами. Ловить можно, например, по обращению к INT 15.


SoftCat написал:
[q]
А Вы как учитываете длину файла, указанную в заголовке?
[/q]
Я – никак. Назначение моего обработчика кассетного прерывания – это тупо считать или записать блок данных с ленты или на ленту. А уж сколько именно байтов в этом блоке использовать, решает вызывающая этот обработчик прога. В данном случае – Бейсик, т. к. других прог для работы с кассетами IBM PC (именно PC/PCjr, а не «Поиск-1») я что-то не видел.
Кассетный интерфейс IBM PC-совместимое. До 2000 года включительно
basic.zip

Размер: 25926, скачан: 29
Тип:
Дата: 1 мая 2014 15:17
uav1606 написал:
[q]
Так... Продолжаем эксперименты. Сохранил файл с ключом "A" после SAVE, скормил wav2cas, получился CAS-файл с текстом:

$10 PRINT "Hello

Всё. А должно быть ещё "..., world" и вторая строчка "20 goto 10".

WAV во вложении.
[/q]
Я считал заголовок файла hellowld3.wav. Оказывается длина файла равна 10h = 16 байт (это меньше фактической длины). Может быть для текстовых файлов на Бейсике длину надо как-то корректировать?

Kurill_GANJOU написал:
[q]
А вот записанный вечером hellowld3.wav считался без проблем.
[/q]
А Вы как учитываете длину файла, указанную в заголовке?

Во вложении Кассетный Бейсик МС1502.
Кассетный интерфейс IBM PC-совместимое. До 2000 года включительно
3C509.COM

Размер: 8143, скачан: 25
Тип:
Дата: 29 апреля 2014 14:53
Появилась у меня сетевушку ISA-16 3C509B:

http://habrastorage.org/files/...24f281.jpg

Эту карточку нужно вставить в ISA-16 материнку, запустить программу 3C5X9CFG.EXE (гуглится по названию). Дальше необходимо зайти в настройки, выставить подходящее для XT IRQ. Я выбрал 7, исходя из того, что 3 и 4 занято под COM-порты, 5 - для XT IDE или саунд-бластера. А 7 - свободно. Там же можно выбрать порт, я оставил 0x300h, который по умолчанию. Дальше необходимо отключить PnP, можно еще поставить оптимизацию для DOS Client (вместо Windows по умолчанию). Все, сохраняем настройки, выдергиваем карту из ISA-16 матери и вставляем ее в XT-материнку.

Для нее есть модифицированный для 8088 пакетный драйвер: на форуме Vintage-Computer.com
Единственное, там автор видимо забыл заремить лишний JMP send_pkt_6 в этом коде:
[q]
;start 8086 code
send_8086:
lodsw
out dx,ax
loop send_8086
;end 8086 code

jmp short send_pkt_6
;send_pkt_7:
; .386
; shr cx,2 ;already rounded up.
; rep outsd ;output 32 bits at a time.
; .286
send_pkt_6:
[/q]
Мелочь конечно, но с другой стороны на XT любая лишняя команда трудозатратна. А джамп нифига не пару циклов занимает, а около 10-11 (не помню точно). Вообщем заремил, пересобрал. Прикладываю на всякий случай в конце сообщения.

Запускается пакетный драйвер командой 3C905.COM 0x60, где 0x60 - обслуживающее прерывание.

Дальше берется mTCP, там есть DHCP-клиент, для авто-получения IP-адреса, команды PING, TELNET и др. По TELNET посмотрел текстовые звездные войны (telnet:towel.blinkenlights.nl)


здесь запускается пакетный драйвер, после него DHCP-клиент, который ждет получения IP-адреса.


IP-адрес получен.

После чего можно настроить и запустить httpserv:


И на большом брате заходим на веб-сервер:


PS: Жаль я сижу вообще за NAT'ом, поэтому проблематично прокинуть во внешний мир сервер. А так было бы прикольно его в инет выставить :)
Поднял сеть на XT на 3c509b ISA-16 IBM PC-совместимое. До 2000 года включительно
I15_0426.ZIP

Размер: 24401, скачан: 31
Тип:
Дата: 26 апреля 2014 16:27
ВНИМАНИЕ!
Исправлен баг с неверной длиной блока при чтении. Желающим протестировать просьба скачать обновлённый вариант.
Кассетный интерфейс IBM PC-совместимое. До 2000 года включительно
HELLOWLD.ZIP

Размер: 419, скачан: 27
Тип:
Дата: 26 апреля 2014 0:20
uav1606 написал:
[q]
К сожалению, ни один из них получившийся CAS-файл не смог преобразовать. Или я что-то не так делаю?
[/q]
Сегодня утром разобрался, в чем дело с Бейсиком. Записал hellowld2.wav от uav1606 на кассету и пробовал загрузить в Бейсик. Моей программой считался только заголовок, после загрузки блока данных Бейсик выдал «Out of memory». А вот записанный вечером hellowld3.wav считался без проблем. Длина блока, что ли, у меня неверно вычисляется, причем именно для сжатого формата?.. Зато hellowld2.wav успешно загрузился с ленты драйвером Лампочкина. Там оказались две строки:
[q]
10 PRINT "Hello, world"
20 GOTO 10
[/q]
Результат сохранил на диск командой SAVE. Потом в hex-редакторе сравнил созданное SAVE’ом и wav2cas’ом. Тут вот, оказывается, в чем дело:

При конвертации wav --> cas теряется тип данных в заголовке (тип 80H для сжатой бейсик-программы). Значит, Бейсик (или конвертер) такой *.cas загрузит с диска как простой текст, но не сможет разобрать, что там написано. В программе, сохраненной на диск лично Бейсиком, признак сжатого формата находится в самом начале файла и имеет значение FFH. В исходнике READBAS нашел строки:
[q]
100 OPEN FI$ AS 1 LEN=1: FIELD 1, 1 AS X$
110 OPEN F2$ FOR OUTPUT AS #2: GET 1
120 IF ASC(X$) >>255 THEN PRINT "NOT A BASIC PROGRAM SAVED IN BINARY":END
[/q]
Думаю, понятно, что это такое.
Значит, если в начало cas-файла со сжатой бейсик-прогой дописать FFH, то в таком виде (на один байт длиннее) *.cas уже может быть преобразован конвертером типа RB58 или загружен прямо в Бейсик.

Tronix написал:
[q]
Ну у меня там в проге какой-то глюк вроде на тему размера был, щаз уже не помню точно, ибо год назад писал. Возможно проявляется только на таких маленьких файлах (> 512 байт)...
[/q]
Вот Tronix как раз здесь не виноват!!! Это у мелкомягких-айбиэмовцев, по ходу, стандарт такой. Блок данных на кассете не соответствует аналогичному файлу на диске. Ну, как бинарь на кассете и ДОСовский com-файл – это не одно и то же...
Вот у меня при чтении упакованных данных точно глюк! Кому не лень, посмотрите исходник, пожалуйста.

uav1606 написал:
[q]
Так... Продолжаем эксперименты. Сохранил файл с ключом "A" после SAVE, скормил wav2cas, получился CAS-файл с текстом:

$10 PRINT "Hello

Всё. А должно быть ещё "..., world" и вторая строчка "20 goto 10".
[/q]
Моей прогой hellowld3.wav с ленты загрузился успешно (см. выше). Программой Лампочкина, впрочем, тоже. A вот wav2cas в данном случае действительно дивно глюкнул, неверно определив длину.

Tronix написал:
[q]
Видно и так, что все работает и эксперимент с LPT-портом прошел успешно.
[/q]
Пока у меня успешно заработала только запись. И то со второй попытки. Чтение же у меня пока отлажено наполовину. Что-то у нас с Tronix'ом взаимно обратные ошибки - у него неверно обрабатываются тексты на Бейсике в открытом виде, а у меня - в упакованном...

Во вложении:
HELLOWLD.BAS - файл, сохраненный командой SAVE после загрузки в Бейсик hellowld2.wav с ленты;
HELLO.CAS - после обработки hellowld2.wav wav2cas’ом. Не преобразовывается в текст и не грузится в Бейсик (аналогичен hellowld2.cas у uav1606 во вложении);
HELLOWLD.CAS - получился из HELLO.CAS дописыванием FFH в начало.

Хотя HELLOWLD.BAS и HELLOWLD.CAS отличаются концовкой (SAVE добавил еще два байта в конец), конвертируются и грузятся они совершенно одинаково.
Кассетный интерфейс IBM PC-совместимое. До 2000 года включительно
hellowld3.wav

Размер: 373780, скачан: 31
Тип:
Дата: 25 апреля 2014 20:59
Так... Продолжаем эксперименты. Сохранил файл с ключом "A" после SAVE, скормил wav2cas, получился CAS-файл с текстом:

$10 PRINT "Hello

Всё. А должно быть ещё "..., world" и вторая строчка "20 goto 10".

WAV во вложении.
Кассетный интерфейс IBM PC-совместимое. До 2000 года включительно
Страницы: 1 2 3 4 5 ... 132 133 134 135 136 137 138 139 140 141 142

1 посетитель просмотрел форум за последние 15 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS