eXeL@B —› Программирование —› TSR+DOS+запись в файл=проблема |
Посл.ответ | Сообщение |
|
Создано: 24 февраля 2007 14:00 · Личное сообщение · #1 проблема, собственно в чем: надо срочно написть тср (что-то типа грабера экрана по таймеру) под дос аж 6.22; дело вообще говоря знакомое, но за давностью несколько подзабытое - напоролся на грабли: при записи из таймерного прерывания (1c) на винт через int21 прога намертво вешается. не могу понять почему. про нереентерабельность доса помню - проверка indos есть. psp+dta устанавливаю в свои. файл открывается изнутри прерывания. вобщем, моя фантазия истощилась, кто лучше разбирается - подскажите пожалуйста. был бы очень благодарен за работающий пример. исходник и скомпилированный текст в аттаче. зы. стек переставлять на собственный пробовал. не помогает. сбрасывать не каждый тик, а раз в примерно 3 секунды - аналогично. полный маразм 90f6_24.02.2007_CRACKLAB.rU.tgz - see.zip |
|
Создано: 24 февраля 2007 14:38 · Личное сообщение · #2 Вот тебе мой логгер портофф под DOS - может быть, поможет.. da1e_24.02.2007_CRACKLAB.rU.tgz - WATCH_P.rar ----- The one derivative you manage is the one I abhore (c) Slipknot |
|
Создано: 24 февраля 2007 14:57 · Личное сообщение · #3 Chingachguk пишет: Вот тебе мой логгер портофф под DOS - может быть, поможет.. спасибо, посмотрел. там инт 28 задействован - к сожалению у меня так не пройдет, нет уверенности что там дос висит в идле. до того (самый первый вариант) - пробовал аналогичным способом, но почему-то не открывается нормально файл, а значит - дальше не пишется. не понимаю зы. попробовал методом исключения посмотреть на чем вешается - оказалось на 40h, т.е. на самой записи. открытите, установка и тп проходят, записываем - висим. шайтан однако. пойду копать дальше... да. пробовал перехватить 13 и повесить флаг входа (типа проверки на повторный вход). не помогло. |
|
Создано: 24 февраля 2007 15:13 · Личное сообщение · #4 |
|
Создано: 24 февраля 2007 15:25 · Личное сообщение · #5 |
|
Создано: 24 февраля 2007 15:30 · Личное сообщение · #6 |
|
Создано: 24 февраля 2007 15:52 · Поправил: Chingachguk · Личное сообщение · #7 Эээ... Ну не сам int 28h, а флажок от него... вряд ли его не будет. Тогда делай как в другом моем логгере - резидент висит и в буффер (память) сбрасывает, а дампер общается с ним... например через свободное int 63h... ps А если через BIOS, то эта... если только на дискетку в сектора... а прямо на диск - тут надо еще FAT рюхать pps Вот пример другого логгера - для какой-то pcdosemu давно делал... ----- The one derivative you manage is the one I abhore (c) Slipknot |
|
Создано: 24 февраля 2007 16:06 · Личное сообщение · #8 Вот оно: 213a_24.02.2007_CRACKLAB.rU.tgz - PATCH_PC.rar ----- The one derivative you manage is the one I abhore (c) Slipknot |
eXeL@B —› Программирование —› TSR+DOS+запись в файл=проблема |