Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопросы новичка, несколько небольших вопросов 
:(
    Опции темы
RedShadow
Дата 14.12.2005, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.12.2005

Репутация: нет
Всего: нет



После краткого знакомства с асмом и глубинным устойством компа у меня накопилось несколько Небольших
вопросов:
Небольшой вопрос-1: существует ли достаточно полная, понятная, новая (хотя бы 1995-го года)smile дока по
MS-DOS на русском языке, а если существует, то где её найти?

Небольшой вопрос-2: правильно ли я понимаю: при вызове прерывания происходит джамп в начало памяти,
где хранятся подрограммы, работающие в основном с портами (т.к. большинство прерываний вызываются,
когда необходимо произвести работу с устройством), а потом происходит возврат в программу? Если так,
то можно ли достигнуть тех же результатов с помощью работы с портами? Если да, то с какими?

Небольшой вопрос-3: как организовать вывод текста в графическом режиме? Как работать со шрифтами и как
они реализованы в Паскале с точки зрения асма?

Небольшой вопрос-4: расскажите, плз, о замечательных адресах в памяти:
о таких, как 417,418(байты состояния клавиатуры) или F000:FFFE(вид компа: XT, jr,AT) пишут довольно
часто, а есть ли другие примечательные, сохраняющиеся от одной модели компа к другой?
Буду благодарен, если ответите на один-несколько вопросов. smile
PM MAIL   Вверх
sergejzr
Дата 14.12.2005, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: нет
Всего: 360



Модератор: Название темы должно отражать ее суть!
Модератор: Пожалуйста, один топик - один вопрос.

Создайте пожалуйста темы правильно, а эту - удалим smile


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Chingachguk
Дата 14.12.2005, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

Репутация: 11
Всего: 18



Цитата
Небольшой вопрос-3: как организовать вывод текста в графическом режиме? Как работать со шрифтами и как
они реализованы в Паскале с точки зрения асма?


Код

{$G+}
{$N+}
Uses CRT;
Const
   MyString: string[30] = 'Test String';
Var
   Tabl_Shrift: pointer;
   i: byte;
{Точка}
Procedure PutPixel256(Color:Byte; X,Y:word);
  Begin
    Asm
      push  0A000h
      pop   ES
      cld
      mov   AX,320
      mul   Y
      mov   DI,X
      add   DI,AX
      mov   AL,Color
      stosb
    End;
  End;
{Закрашенный прямоугольник}

...

{Вывод текста}
Procedure outt256(color:byte; x,y,addr:word);
  Begin
    Asm
      les  SI,tabl_shrift
      mov  AX,320
      mul  Y
      mov  DI,X
      add  DI,AX
      mov  BX,Addr
      mov  CL,[BX]
      inc  BX
      xor  CH,CH
@Start: mov  AL,[BX]
        inc  BX
        xor  AH,AH
        push SI
        push CX
        shl  AX,3
        add  SI,AX
        push DS
        push DI
        push 0A000h
        pop  DS
        mov  CX,8
        mov  AL,Color
@start1:  mov  AH,ES:[SI]
          inc  SI
          push CX
          mov  CL,8
@Paint:   shl  AH,1
          jnc  @Next_Pix
          mov  [DI],AL
@Next_Pix:inc  DI
          loop @Paint
          pop  CX
          add  DI,320-8
          loop @start1
        pop  DI
        pop  DS
        pop  CX
        pop  SI
        add  DI,8
        loop @Start
    End;
  End;
Begin
  Graph256;
  PutPixel256(14,10,10);
  Bar256(13,20,20,30,30);
  Line256(12,40,40,100,100);
  Circle256(11,12,140,140);
  Fill_Area(11,9,140,140);
  Outt256(9,20,170,ofs(MyString));
  repeat until keypressed;
  Close256;
End.



--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
Akina
Дата 14.12.2005, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 1
Всего: 454



1) да. на rusdoc и аналогичных.
2) нет.
3) отвечено
4)
Цитата
0:400h                  RS-232 Communications Line Port Base Addresses
0:408h                  Parallel Printer Port Base Addresses
0:410h                  Equipment List
0:412h                  Reserved (POST Status on PC Convertible)
0:413h                  Memory Size
0:415h                  Reserved (PC Convertible Battery Status)
0:417h                  Shift Status
0:418h                  Extended Shift Status
0:419h                  Alternate Keypad Entry
0:41Ah                  Keyboard Buffer Head Pointer
0:41Ch                  Keyboard Buffer Tail Pointer
0:41Eh                  Keyboard Buffer
0:43Eh                  Diskette Drive Recalibrate Status
0:43Fh                  Diskette Drive Motor Status
0:440h                  Motor Off Counter
0:441h                  Last Diskette Drive Operation Status
0:442h                  Diskette Drive Controller Status
0:449h                  Display Mode
0:44Ah                  Number of Columns in Current Mode
0:44Ch                  Length of Regen Buffer
0:44Eh                  Starting Address of Regen Buffer
0:450h                  Cursor Position (Column, Row) for Display Pages
0:460h                  Cursor End Scan Line and Start Scan Line
0:462h                  Current Display Page
0:463h                  CRT Controller Base Address
0:465h                  Current Setting of Mode Control Register
0:466h                  Current Setting of Color Select Register (3x9h)
0:467h                  Reserved
0:46Ch                  Long Integer with Timer Counter
0:470h                  Timer Overflow Flag
0:471h                  Break Key State
0:472h                  Reset State Flag
0:474h                  Last Fixed Disk Operation Status
0:475h                  Number of Fixed Disks
0:476h                  Reserved
0:477h                  Reserved
0:478h                  Time-Out Values for Parallel Printers
0:47Ch                  Time-Out Values for RS-232 Communications Lines
0:480h                  Keyboard Buffer Start Offset Pointer
0:482h                  Keyboard Buffer End Offset Pointer
0:484h                  Number of Rows on Display, minus 1
0:485h                  Character Height
0:487h                  Video Control States
0:489h                  Reserved
0:48Bh                  Diskette Media Control
0:48Ch                  Fixed Disk Controller Status
0:48Dh                  Fixed Disk Controller Error Status
0:48Eh                  Fixed Disk Interrupt Control
0:48Fh                  Reserved
0:490h                  Diskette Drive 0 Media State
0:491h                  Diskette Drive 1 Media State
0:492h                  Reserved
0:494h                  Drive 0 Current Track
0:495h                  Drive 1 Current Track
0:496h                  Keyboard Status and Type Flags
0:497h                  Keyboard LED Status
0:498h                  Double-Word Pointer to User Wait Complete Flag
0:49Ch                  Long Integer with User Wait Count (Microseconds)
0:4A0h                  Wait Active Flag
0:4A1h                  Reserved
0:4A8h                  Double-Word Pointer to Video Parameters for EGA
0:4ACh                  Reserved
0:4F0h                  Intra-Application Communications Area (ICA)
0:500h                  Print Screen Status Byte (See INT 05h)
0:501h                  Reserved
0:504h                  Phantom Drive Flag
0:505h                  Reserved

F000:FFF0h              FAR JMP to Beginning of Power-On Self Test (POST)
F000:FFF5h              ROM BIOS Release Date, in ASCII
F000:FFFCh              Reserved
F000:FFFEh              System Model ID



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
RedShadow
Дата 14.12.2005, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.12.2005

Репутация: нет
Всего: нет



Спасибо smile
PM MAIL   Вверх
Loginanton
Дата 11.3.2008, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 114
Регистрация: 8.11.2007

Репутация: нет
Всего: нет



Такой вопрос: правильно я понял, что программирование на асме для форточек состоит, в основном, в знании win api ???
PM   Вверх
Mikl_
Дата 23.4.2008, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 537
Регистрация: 9.11.2007

Репутация: 8
Всего: 14



Loginanton, в целом да, еще пишут драйвера, есть раздел программирования под DiretX и OpenGL, сетевое программирование...
PM MAIL   Вверх
Loginanton
Дата 3.5.2008, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 114
Регистрация: 8.11.2007

Репутация: нет
Всего: нет



Mikl_, а неподскажешь какой нить справочник по winapi ? Хотябы по основным функциям. Тока чтоб понятно всё было, а то нашёл вот один справочник - http://develab.narod.ru/api/ - но я его не перевариваю smile
PM   Вверх
ecl1pse
Дата 15.5.2008, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 27.4.2008

Репутация: нет
Всего: нет



Loginanton,  ты же мне помоему сам посоветовал рассылку с креклаба?! Там как раз эти самые win api и описываются, в ЧТИВЕ II, вроде =)
PM MAIL ICQ   Вверх
pSOV
Дата 21.5.2008, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 16.5.2008

Репутация: нет
Всего: нет



Я пользовался MSDN - наверное самый полный справочник. Набери на msdn.microsoft.com в поиске "windows api"
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0829 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.