Как перевести древний код на asm86, в fasm11.10.2022, 18:11. Показов 7818. Ответов 42
Метки нет (Все метки)
1
|
||||||
| 11.10.2022, 18:11 | |
|
Ответы с готовыми решениями:
42
|
|
Модератор
|
||||||||
| 12.10.2022, 12:31 | ||||||||
|
У IBM PC DOS, SCP и MS-DOS разная нумерация версий.
https://github.com/microsoft/M... rce/IO.ASM Или машинонезависимую часть, которую в CP/M Gary Kildall написал вообще на PL/M, чтобы портировать на несовместимые по архитектуре процессоры? (аналог BDOS CP/M) https://github.com/microsoft/M... /MSDOS.ASM Добавлено через 10 минут https://youtu.be/YgDE-d4pfTc?t=1334
Есть образы, возможно, чуть более ранних версий. https://www.pcjs.org/software/... /ibm/0.90/
0
|
||||||||
| 12.10.2022, 19:16 [ТС] | |
|
Кароче сделал свой образ загрузочной дискеты 86-DOS(1.4мб), для ibm pc совместимого ПК, но у меня проблема с запуском программ. Думаю проблемма в COMMAND.COM, я его немного модифицировал .
86-DOS FOR FDD 3.5.ver.1.14.English.zip
0
|
|
|
Модератор
|
|
| 14.10.2022, 15:43 | |
EDLIN.COM, ASM.COM, HEX2BIN.COM и DEBUG.COM можно было протестировать и в FreeDOS, и в DOSBOX.Загрузчик транзитных команд (.COM и .EXE) в ранних версиях (MS-PC-86)DOS был встроен в COMMAND.COM.exec()-wait() ещё не было.
0
|
|
|
Модератор
|
|||||||||||||||||||||||||||||||||||||
| 16.10.2022, 09:23 | |||||||||||||||||||||||||||||||||||||
Чтобы загрузить DOS, осталось лишь переписать READ так, чтобы он работал на той платформе, на которой Вы хотите запускать свой форк 86-DOS. Чтобы дальше всё работало, конфигурацию дисков поменять на CUSTOM:
I/O System for 86-DOS(BIOS 86-DOS) нужно перенастроить с сегмента, начинающегося 0x400 сразу после таблицы векторов прерываний куда-нибудь повыше, на 0x50, 0x60 или 0x70.
Если самому программировать то, что на платформе эмулирует контроллеры FDC, DMA и т.п микросхемы, которые были в оригинальном IBM PC, не пользоваться IBM PC BIOS и обрабатывать прерывания внутри I/O System, то можно не перемещать наш 86-DOS BIOS на другие адреса.
0
|
|||||||||||||||||||||||||||||||||||||
|
101 / 95 / 10
Регистрация: 31.08.2022
Сообщений: 1,014
|
|
| 19.10.2022, 06:41 | |
|
0
|
|
|
Модератор
|
|
| 19.10.2022, 11:14 | |
|
Это элемент ABI, выбранного Тимом для вызова из программ пользователя высокоуровневых функций совместимого с CP/M API:
26 : SET SUBSEQUENT DMA ADDRESShttps://www.nesssoftware.com/n... pdf#page=2 и для новых функций, не имевших прямых аналогов в CP/M
0
|
|
| 28.10.2022, 09:56 | |
|
0
|
|
| 28.10.2022, 10:21 [ТС] | |
|
Не по теме: politoto, к сожалению с умением у меня проблеммы
0
|
|
|
Модератор
|
|
| 08.11.2022, 09:17 | |
Booting from Hard Disk...
0
|
|
|
Модератор
|
|
| 14.11.2022, 15:52 | |
|
MaGz GoLd,
qemu-system-i386 -S -s -fda 86dos.144 -cursesПеред этим подправил вызовы BIOS в секторах 86-DOS так, как было предложено выше: https://www.cyberforum.ru/post16503891.html Набросал односекторную "86-IO", в которой кроме минимальной инициализации - только три первые функции, достаточные для работы CON:. На начальном этапе код BDOS и BIOS размещал там, где они должны быть, средствами qemu. Потом сделал образ диска с помощью mformat. В IPL record, которую сделал mformat, поменял номер диска, количество секторов и адрес, куда эти секторы нужно читать.
0
|
|
|
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
|
|||
| 03.05.2023, 22:20 | |||
|
И не в конкретные сектора, а IO.SYS должен быть первым файлом на диске (дискете) и не иметь фрагментации. Это достаточное условие. Может быть не минимально достаточное, но такие тонкости что-то не интересовали. Добавлено через 18 минут
1
|
|||
|
Модератор
|
||
| 04.05.2023, 10:08 | ||
|
1
|
||
|
Модератор
|
||
| 05.05.2023, 19:14 | ||
|
Но, несомненно, могу и ошибаться - множество лет не пользовался дискетами.
0
|
||
|
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
|
|
| 09.05.2023, 08:53 | |
|
0
|
|
|
Модератор
|
||
| 03.07.2023, 12:40 | ||
Сообщение было отмечено MaGz GoLd как решение
Решение
1
|
||
| 03.07.2023, 12:40 | |
|
Помогаю со студенческими работами здесь
40
Как адаптировать приведенный код под FASM
Как воспроизводить dll-файлы и код их чтения на отладчике xdbg? (FASM) Tasm в Fasm (перевести) Алгоритм RC4 (перевести FASM -> TASM) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча
Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове.
Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
|
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
|
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера»
Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит.
Придуман Биллом Госпером в 1970-х, опубликован в. . .
|
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb">
<style>
<!]>
</ style>
<g id="bush">
</ g>
</ svg>
function fn(){
let rost;/ / высота древа
let xx=165,yy=210,w=256;
|
|
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов,
содержащихся в реализации модуля. По-умолчанию все члены модуля доступны:
module Foo
let x = 10
let boo () = printfn "boo"
. . .
|
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible". . .
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|