Kak se wika asm-programa ot clipper 5.3/exospace?

12 отговора 72 прегледа
#1

Kak se wika asm-programa ot clipper 5.3/exospace?

???????
Отговор
в отговор на gydi #2

Kak se wika asm-programa ot clipper 5.3/exospace?

Аз лично никога не съм викал , но има процедура CALL (С and Assembler) Нямаш ли Norton Guide? Пиши и ще ти пратя.... Успех!
Отговор
в отговор на gydi #3

clipper 5.3/exospace?-уточнение

В общи линии имам 20-на асемлерски програмки за clipper87 /полупрозрачни сенки, мишка и.т.н/ , може би съм задал неправилно въпроса - КАК СЕ ПРАВИ КАТО ТРЪГНЕ АСЕМБЛЕРСКАТА ПРОЦЕДУРА ДА НЕ ТИ ДАВА "General protection fault"
Отговор
в отговор на gydi #4

clipper 5.3/exospace?-уточнение

С exospace приложението ти работи в protected mode - ако пишеш директно в паметта или портове е нормално да получаваш грешки. За да работиш нормално трябва да ползваш дескриптори, но има един малък проблем - мисля, че в документацията на Clipper ги няма описани. Ако искаш да видиш как става трябва да си намериш описание на DOS/16M - Tenberry Software или както направих аз - дизасемблирах част от бибилиотечните фукции - от библиотеката, която върви с exospace. Функциите са със C интерфейс - това за начина на предаване на параметрите. успех
Отговор
в отговор на tRex #5

clipper 5.3/exospace?-уточнение

tRex, аз работия заедно с гъди по този проблем и искам да те питам нещо, но предпочитам по телефон. За първи път работя в защитен режим и докато обясня ще стане утре.
Отговор
в отговор на mydi #6

exospace

Имам Norton Guide за Exospace...
Отговор
в отговор на gydi #7

exospace

ще ми го пратиш ли на емайла?
Отговор
в отговор на gydi #8

Аз купих преди години....

Clipper 5.3 , за да узаконя програмите си на Clipper въобще. Има една камара книги които не чета. Там има някои работи за exospace. Не съм гледал дали компютърния help (Norton Guide ) е копие на книгите. Ако се наложи, обади се да ти пратя gate-то. Тук обаче нещо ме чуди. Аз съм написал преди време една камара функции, обаче изцяло на C. Поради това, че ги употребявах често ги турих в статична библиотека (.LIB). Никакви проблеми не съм имал. Но тук имам предвид нещо друго. Убеден съм, че поне 90 % от фунциите писани на ASM мога да се напишат и на C. Нещо повече. При работа с Clipper 5.3, може да се използва компилатор с inline/blocks assembly. (__asm/_asm). Ако не се използува пряко адресиране - няма проблеми, иначе най-малкото което може да ти се случи, е да се набуташ с VMM системта. Например функцията за "сенките" я правих на C. При Clipper 5.3 мишката пьк не е проблем и т.н. Само дето ме е яд на парламат с LIGHTLIB, ама това е минало. Ако има нещо за gate-то, обади се. Поздрави: Любо
Отговор
в отговор на gydi #9

Отг: Kak se wika asm-programa ot clipper 5.3/exospace?

Функциите които ти трябват са _D16SegAbsolute и _D16SegCancel - и двете са far.
Можеш да видиш как се викат от src на библиотеката на Symantec C. Ако дадеш mail мога да ти пратя file който ти трябва




Отговор
в отговор на tRex #10

Отг: za tRex

georgi_georgiew@yahoo
намерих една библиотека която спомага работата в с VM code32 -ако искаш да ти я реплейна ?

Отговор
в отговор на gydi #11

Отг: Как се превключва от защитен в реален и обрат

Как се превключва от защитен в реален и обратно в asm и в c ?

Отговор
в отговор на gydi #12

Отг: Как се превключва от защитен в реален и обрат

зависи от cpu-то
- за 386 и нагоре е лесно нагласяш си дескрипторните таблици, зареждаш ги където трябва и си готов. обратно също е лесно сменяш един бит в cr0 и готово (не забравяш да си нагласиш отстаналите неща - векторна таблица, стек, и т.н.)

- за 286 работата не за гнусливи - в защитен режим се влиза почти както при 386.
за да се върнеш обратно трябва да направиш RESET на процесора (това е една от недомислиците на INTEL)

имай предвид, че и за двата случая викането на фукции на DOS и BIOS трябва да става в real mode !!!

за повече подробности: [линк] - имаше някакъв документ засягащ програмирането за x86

успех

Отговор
в отговор на gydi #13

Отг: Как се превключва от защитен в реален и обрат

Чувал съм по-знаещи от мен да казват, че това е трудна работа. Ако няма
стартирано нещо като emm386 било лесно, връщането също (там онзи
бит в cr0). Ако има обаче стартирано нещо като emm386, това нещо
ставало собственик на ресурсите и може да не ти даде достъп до
регистрите, които ти трябват. Виж преминаването от защитен режим
(най вероятно процесора на PC-то ти работи в този режим)в псевдо-
реален (дето му викат v86) и обратно е изпълнимо... но достатъчно
сложно. Ако целта ти е да се пребориш с Clipper 5.3 + Exospace и
Assembler това е лесна работа.Пишеш на Assembler без да мислиш за
какъвто и да е защитен режим и викаш процедурите или функциите
без call. Там е ключа за палатката. Достъпа до параметрите става
с разни функции, започващи с две долни черти, които са описани в NG-то.
Имам усещането, че интерпретатора на Clipper(в съчетание с Exospace),
преди да изпълни процедура или функция (а може би и всяка команда),
сам минава в псевдо-реален режим и после се в защитен. Това за да го
проверя ми трябва някакъв дебъгер за защитен режим. Моя любимец
afd.com не се справя с този режим. Ако някой е прочел писанита ми чак
до тук и има под ръка такъв дебъгер, и има желание да го изпрати
на адрес goldko@dir.bg, goldko, ще му бъде цял живот признателен
Хайде драпай нататък.

Отговор