Привет всем! Кто обьяснит в чём дело и чё делать??? Выполняю эту ф-ю E820h int 15h, а она выдаёт такие результаты что на голову не налазят, вот например: 1) на 486 с 16 метрами озу выдала 79Fh страниц по 4 кб с типом 1 (это 8 метров даж нет); 2) на пне2 с 64 метрами озу выдала 9Fh (именно столько!!! 9Fh страниц по 4 кб с типом 1). Ну на пне4 с 2 гб озу выдала нормальный результат - 7FF10h cтраниц. Я ведь правильно делаю что отбираю память с типом 1?
0136 Показывай код. Может где ошибка. А если в странице не переводить и посмотреть, что выдает целиком со всеми типами? Разные биосы поразному воспринимают эту функци. Некоторые требуют Eax, а некоторым хватает ax, а про верхнию часть им всеравно. Нужно eax использовать. Если ax то может быть вот что. Первый вызов срабатывает, а второй уже нет. Так как верхию часть eax окажется не нуливой. Очень похоже на твой случий.
вот код (только там с выводом фиговато, 8 нулей правых не учитывайте, запустите поймёте). вот что было с 16 метрами - 1) 0h , 9FC00h, 01h; 2) 0100000h, 0700000h, 01h, 3) 0800000h, 0800000h, 02h. Всё.