![]() |
|
Модераторы: volvo877, Snowy, MetalFan |
![]()
|
|
| ferrum2688 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.12.2005 Репутация: нет Всего: нет |
Люди подскажите как в паскале под дос делать графику как в варкрафте 2, а то модуль Graph меня не устраивает из-за отстойной графики. А ещё я хочу чтоб по экрану мышка бегала. А ещё хочу узнать как считывать с клавы клавиши типа F1, и стрелки. Может кто-нибудь знает как в паскале время с системного таймера считывать?
|
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: нет Всего: 484 |
Все это делается через ассемблерные вставки и прямое обращение к памяти BIOS.
Для этого тебе нужно знать ассемблер, иметь документацию по прерываниям и карту BIOS. |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: нет Всего: 108 |
там есть команды прямой работы с портами port[..] -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Zero |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Паскаль - это создаёт DOS приложения, и ясен фиг она будет отстойной чё бы и как бы ты не делал на нём. Паскаль не предназначен для серьёзных прог, на нём чисто надо научится прогать. А далее переходи на Delphi или С++. |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: нет Всего: 108 |
в принципе можно сделать FreePascal-ем, он вроде позволяет делать 32х-разрядные приложения... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: нет Всего: 484 |
И port тоже. Хотя можно и без него обойтись. А вот без ассемблера вряд ли. Что-то можно сделать на уровне паскаля. Но не все. Обращение к памяти биоса и видеопамяти можно. А вот работать с таймером и мышью нужно на асме. Установка 230х200 - INT10h Хотя, если извратиться, то даже это можно на паскале сделать, но карта биоса и дока по прерываниям все равно нужна. была.. в DOS времена. Сейчас можно спокойно делать любые вещи на OpenGL в FreePascal. GLScene для него есть. Так что не вижу смысла возвращаться к DOS. |
|||
|
||||
| Albinos_x |
|
||||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: нет Всего: 108 |
у меня тут книжка интересная лежит... в ней неплохо показано как работать на паскале с мышью, и видеокартой...
согласен... тем более что если стоит NT клон винды, то напрямую с портами работать не получится... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||||
|
|||||||
| e-moe |
|
||||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 3.8.2004 Где: Украина, Донецк Репутация: нет Всего: 4 |
начиная со второй версии уже и 64 бита ;)
Мои наработки тут.
смотри 32-битную переменную по адресу 0000h:046Ch, как только будет переполнение этого счетчика, байт 0000h:0470h увеличивается на 1. Добавлено @ 23:11
http://forum.sources.ru/index.php?showtopic=45620 http://forum.sources.ru/index.php?act=ST&f=87&t=90011 |
||||||||
|
|||||||||
| ferrum2688 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.12.2005 Репутация: нет Всего: нет |
Zero:"А далее переходи на Delphi или С++"
А Delphi на втором курсе... Albinos_x:"у меня тут книжка интересная лежит... в ней неплохо показано как работать на паскале с мышью, и видеокартой..." Электронная? В общем вроде нашёл как на Паскале время смотреть, только не знаю как пользоваться этим. На странице http://www1.citforum.ru/programming/bp70_lr/index.shtml (примерно здесь). Короче подключаем модуль Dos и там есть такие процедуры которые возвращают время и дату(gettime();,getdate();), но я не могу подобрать тип переменной которой они присваивают значение (на типы которые я знаю выдаёт: несовпадение типов). Насчёт мыши: пытаюсь осмыслить информацию, которую мне предоставили. |
|||
|
||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 2 Всего: 116 |
А что, Help у тебя отсутствует? Нельзя напечатать GetTime или GetDate, установить на слово курсор, нажать F1, и получить информацию, с какими именно типами работает процедура? (Кстати, и первая и вторая работают с параметрами типа Word) |
|||
|
||||
| profispb |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: нет Всего: 1 |
Во первых, для того чтобы научится реально программировать купи книжку или с интернета скачай.
Работа с клавиатурой через CRT в любой книге можно найти коды. Работа с системным таймером осуществляется через модуль DOS в книге обычно приводят функции. А чтобы сделать реальную графу надо переходить на более высокий уровень типа Delphi. --------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
| Guedda |
|
|||
![]() Подрывник ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3137 Регистрация: 27.12.2005 Где: Ростов-на-Дону Репутация: нет Всего: 78 |
Нужно читать книги... Просто совсем элементарные вопросы... В книгах, даже электронных есть готовые примеры по вопросам, которые Вы задавали.
-------------------- Ll 2 |
|||
|
||||
| Zero |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Guedda форум для то и существует чтобы, разяснять элементарные вопросы... А как он суть поймёт, дальше пусть читает. Добавлено @ 23:26
По умолчанию, паскаль предназначен для создания дос-приложений, и мыш не используется. Только через подключение асемблера Это сообщение отредактировал(а) Zero - 30.12.2005, 23:23 |
||||
|
|||||
| ferrum2688 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.12.2005 Репутация: нет Всего: нет |
Честно говоря,e-moe я не могу разобраться в мышке. Тут слишком сложно, я совершенно не знаю, как обращаться с самодельными модулями, пробовал компилировать, но Паскаль выдаёт ошибку. Мне бы попроще, мне бы просто функции и процедуры которые возвращают наиболее простые значения(например: нажата клавиша мыши или нет и т.д.). И желательно в популярной форме, ну готовое записанное выражение и какой тип переменной надо.
|
|||
|
||||
| profispb |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.12.2005 Где: Санкт - Петербург Репутация: нет Всего: 1 |
ferrum2688 Дело в том что попроще не получится так, как паскаль не допускает размер файла больше 64 Кб., а если писать функции работы с мышью + сама программа, в которой они будут использоваться файл превысит 64 Кб - Паскаль не будет компилить. Ещё раз повторюсь чтобы написать реальное что-то переходи на Delphi, хотя паскаль и предлагает большие возможности, но все таки он изначально создавался в учебных целях.
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало! |
|||
|
||||
![]()
|
| Правила форума "Delphi" | |
|
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |