Форум программистов  
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler
Регистрация

Восстановить пароль
Повторная активизация e-mail

Результаты опроса: Хотите ли вы читать эту книгу?
Хочу 141 78.77%
Не хочу 28 15.64%
уже прочитал 10 5.59%
Голосовавшие: 179. Вы ещё не голосовали в этом опросе

Ответ
 
Опции темы
Старый 04.09.2013, 19:35   #11
Gtnz8
Форумчанин
 
Аватар для Gtnz8
 
Регистрация: 09.08.2012
Адрес: Санкт-Петербург
Сообщений: 95
Репутация: 10
По умолчанию

Пытался скачать файлы к книге на вашем сайте,но почему то слетает соединение с сервером,посмотрите в чем там может быть дело?
Книга отличная ,особенно порадовала глава с написанием драйверов на ассемблере.
Gtnz8 вне форума   Ответить с цитированием
Старый 20.01.2015, 14:39   #12
faxriddinjon
Новичок
 
Регистрация: 20.01.2015
Сообщений: 1
Репутация: 10
По умолчанию

Привет всем. Нужна ваша помощь. Посмотрите, пожалуйста, можно ли программным способом заменить кварц 4,096 MHz на 4,00 MHz
Файл находится тут:
https://docs.google.com/document/d/1...2OeLOshvk/edit

Спасибо заранее.
faxriddinjon вне форума   Ответить с цитированием
Старый 18.02.2017, 11:23   #13
Sergey54
 
Регистрация: 15.02.2014
Сообщений: 4
Репутация: 10
По умолчанию

Изложенное в книге понятно. Объясните пож подробно как с флешки загружаться. Виртуальной машиной не хочу пользоваться, а с флешки нет загрузки, выдает сообщение boot сектор не найден.
Sergey54 вне форума   Ответить с цитированием
Старый 18.02.2017, 13:17   #14
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,233
Репутация: 1263
По умолчанию

Sergey54
Это лучше обсудить в отдельной теме. Судя по сообщению БИОСа вы уже прошли с 0 по 4 пункт и застряли на 5. Но всё равно рекомендую перечитать.

0) Не все флешки годятся для загрузки с них. В первых секторах у таких флешек лежит служебная информация и они имеют свою логическую структуру. При этом изменить это нельзя так как аппаратно заблокировано и информация доступна только на чтение.
С Tranced никогда проблем не было.
1) Способ загрузки UEFI/CSM - выбирается в биосе. CSM (Compatibility Support Module).
CSM - это режим совместимости со старым BIOS когда загрузка идёт с сектора. Для обращения к API БИОСа используют интерфейсную команду int, к примеру (Int 13h)
UEFI используются файлы с расширением *.efi формата PE-EFI.
2) Логическая структура флешь-диска. Есть два основных вида под мягкий-диск и под жесткий диск.
Мягкий диск он же: флоппи, флопик, Floppy, НГМД.
Жёсткий диск он же: HDD, Hard-Disk, НЖМД.

Соответственно в меню-БИОС выбирается тип определения флешь-диска как USB FDD или USB HDD. Тип должен совпадать с логической структурой.
Обычно все работают с USB-HDD.
3) При создании самого первого(считаем от 1) логического тома/раздела его размеры не могут привышать определённые значения. Самый первый раздел не может быть больше не может быть больше 7.8 ГБ. А для жёсткий не более 2 ТБайт.
4) Выбор загрузочного сектора. Для флешек менее 7٫8 Гб и более 7٫8 Гб должны использоваться разный код загрузочного сектора. Для более код должен быть написан с использованием EDD Int 13h AH=42h

5) При записи загрузочного сектора вы могли спутать MBR и Boot Sector(загрузочный сектора) и Boot Record (загрузочная запись).
Надо поместить MBR в 0 сектор физического диска. Обычно путают и пишут не в физический диск, а в логический. Или путают с томом, разделом диска.
6) Забыли вставить или отсутствует магическая подпись
db 55h, 0AAh
Перепутан порядок константы или их место размещение.
6.1) 55h, 0AAh соответственно имеют смещения 510d, 511d (смещение считается от нуля)
7) Некоторые биосы требуют недокументированных кодов в 0 секторе диска. Пока что никто такую базу не создал.
7.2) Не стоит портить DiskSignature им тоже пользуются некоторые биусы.
7.3) Все служебные поля важны!

С виртуозками проблем меньше они не такие привередливые.

Вот ещё ряд типичных проблем/ошибок при написании загрузчика:
http://ru.osdev.wikia.com/wiki/Почем...т_загрузчик%3F

Поэтому лучше это пропустить и пользоваться Grub4DOS для загрузки ядра свой ОС.
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 18.02.2017 в 13:22.
Pavia вне форума   Ответить с цитированием
Старый 18.02.2017, 22:53   #15
Sergey54
 
Регистрация: 15.02.2014
Сообщений: 4
Репутация: 10
По умолчанию

Спасибо Pavia за ответ. Напишу подробнее.
Брал программу - раздела 2 без описанных условий перекидывал на флешку и свободно компьютер запускался. По непонятным причинам в определенный момент это стало невозможным. Либо выдает сообщение No bootable device - insert boot disk and press any key и просит вставить загрузочный диск, либо сразу переходит на загрузку ОС.
Устанавливал загрузчик объемом не более 512 байт в нулевом секторе с сигнатурой 55АА со смещением 510 511 ничего не помогло. Биос определяет флешку как HDD.
Sergey54 вне форума   Ответить с цитированием
Старый 19.02.2017, 14:27   #16
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,233
Репутация: 1263
По умолчанию

Вам надо восстановить MBR на вашей флешке.
В консоли с правами администратора выполнить
bootsect.exe /mbr E:
Где вместо E: - указать диск вашей флешки
Затем сделать загрузочным диском-дос как описано здесь:
http://www.pontin.ru/technical/instr...yu-fleshku-dos
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума   Ответить с цитированием
Старый 19.02.2017, 16:45   #17
Sergey54
 
Регистрация: 15.02.2014
Сообщений: 4
Репутация: 10
По умолчанию

Выдает сообщение что bootsect можно воспользоваться из биос. This tool can only be run on systems booted using a PC/AT BIOS. This was booted using EFI or some other firmware type.
Sergey54 вне форума   Ответить с цитированием
Старый 19.02.2017, 19:58   #18
Sergey54
 
Регистрация: 15.02.2014
Сообщений: 4
Репутация: 10
По умолчанию

Спасибо Pavia, все получилось.
Sergey54 вне форума   Ответить с цитированием
Ответ



Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Руслан Аблязов - Программирование на ассемблере на платформе x86-64 (+ CD-ROM) Alar Свободное общение 110 19.04.2017 02:49
Программирование на Ассемблере Николай ПН Помощь студентам 3 23.03.2010 01:56
Программирование микроконтроллера 80С196КС на ассемблере KOCT9IH Фриланс 3 07.11.2008 14:03




13:28.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru