Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема доступа к регистрам устройств

23K
04 февраля 2007 года
SSTD(M)
9 / / 04.02.2007
Всем доброго врема суток:)
У меня возникла некая проблема, помогите пожалуйста её решить. Начну с того что в этой области знаний я ПОЛНЕЙШИЙ новичок. И пробуя проверить работу ниже изложеной програмы у меня возникли проблемы: компилируя ЭТО
#include<dos.h>
int main(void)
{
int i;
unsigned int far *screen;
screen=(unsigned int *) MK_FP (0xb800, 0);
for(i=0;i<26;i++)
screen=0x0F00 + ('a'+ i);
return 0;
}
компилятор выдаёт такие сообщения об ошибках:
syntax error before `*'
`screen' undeclared (first use in this function)
(Each undeclared identifier is reported only once
for each function it appears in.)
компилятор которым я пользуюсь-Bloodshed Dev-C++,
ОС-Windows_XP_pro_SP_1
Зарание всем спасибо:o
252
05 февраля 2007 года
koderAlex
1.4K / / 07.09.2005
и причём здесь регистры ?
и вообще не в ту тему .
23K
05 февраля 2007 года
SSTD(M)
9 / / 04.02.2007
Цитата: koderAlex
и причём здесь регистры ?
и вообще не в ту тему .


Я конечно понимаю, что в этих дилах я не спец. Но всё таки: я показал пример старой DOS программы, выполняющей вывод алфавита на экран в текстовом режиме, построен как раз на том, что видимая область первой текстовой страницы DOS экрана "совмещалась" с оперативной памятью и начиналась с адреса B800:0000 ( адрес регистра I/O устройства (МОНИТОР). В програме этот адрес показан как 0xB800. ВОТ такие у меня доводы ;)
З.ЫЖ
Лучше бы помог, чем говорить, что здесь что-то не втему. Извиняюсь если оскорбил;)

551
05 февраля 2007 года
Pavia
357 / / 22.04.2004
Регистрами это назвать можно, с большим натягом. Просто видео память. Память видео карты, но ни как не монитора.
По существу убери из исходного кода слово "far" и/или возьми другой компилятор.
23K
05 февраля 2007 года
SSTD(M)
9 / / 04.02.2007
Спасибо Pavia:) Компилятор тепер практичиски не выдаёт никаких ошибок , Только Вот такое сообщения пишет: "Здесь указывается путь"untitled1.o(.text+0x16):untitled1.c: undefined reference to `MK_FP'

Помогите пожалуйста, хотябы прокомментируйте!!!:((((
З.ЫЖ
Посоветуйте подходящий компилятор
551
05 февраля 2007 года
Pavia
357 / / 22.04.2004
Ругается на то что нет макроса MK_FP.
Я посоветовал взять другой компилятор Си потому, что твой не очень сильно распространен. И понять как исправить я не могу.

Я бы взял бы Борланд С++. Потому что там макрос MK_FP определен в файле DOS.h
252
06 февраля 2007 года
koderAlex
1.4K / / 07.09.2005
борланд 3 прекрасно подходит .
23K
07 февраля 2007 года
SSTD(M)
9 / / 04.02.2007
Спасибо всем:)))) А подскажите где скачать этот компилятор можна?
23K
07 февраля 2007 года
SSTD(M)
9 / / 04.02.2007
Спасибо TC рулит, только интерфейс не очень (я понимаю для DOCа всё-таки писалось). Но всё-таки проблема остаётся проблемой. GTTC компилятор уже не выдаёт никаких ошибок, да вот одна проблема не делает программа того, чего она должна делать : после того как я её запускаю на выполнение она…. ничего не делает!?!?!?! Просто выводит консоль и всё, а должна алфавит английский выводить. Плз прокомментируйте и/или пОмОгитЕ!!!!!
ЗЫ ж
Помогите где-то скачать библиотеку под названиям <graph.h> не <graphics.h> , а именно <graph.h>!!
252
09 февраля 2007 года
koderAlex
1.4K / / 07.09.2005
где прогу запускал ? в чистом досе ?
9
09 февраля 2007 года
Lerkin
3.0K / / 25.03.2003
Цитата: koderAlex
где прогу запускал ? в чистом досе ?


Кстати, да. Текстовый режим DOS и консоль Windows - это две большие разницы. В DOS'е можешь юзать прямой доступ к видеопамяти, а при работе с консолью применяются функции WinAPI.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог