Помогите новичку

Applications development, KoOS API questions
  • eAndrew, посмотри ф18.7
    to infinity and beyond
  • Я имею в виду не активного, а "этого"/this/self.
    Хотя такой вариант тоже подойдет, так как это это окно изначально активно. Спасибо.
  • eAndrew

    Code: Select all

    	mcall	9,procinfo,-1
    	mov	ecx,[ebx+30]	; PID
    	mcall	18,21
    	mov	[active_process],eax	; WINDOW SLOT
    З.Ы. Использование ф.18.7 для запрашиваемого случая ненадежно.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4
    Спасибо, то что нужно. Перечитал справку, понял ошибку.
  • Я не могу понять как эта функция

    Code: Select all

    char* strcpy(char* strDest,char* strSource)
    {
            char* res;
            res=strDest;
            while(*strDest++ == strSource++) ;
            return res;     
    }
    которая лежит здесь http://websvn.kolibrios.org/filedetails ... 2Fstrcpy.c
    может работать (в смысле правильно копировать) ?

    Пробовал её использовать на Dev-C++ 4.9.9.2 но программа постоянно падает. Если у других работает то попытаюсь найти ошибку у себя. Или я просто не понимаю как она работает и как ей пользоваться
  • Никак.
    Должно быть while(*strDest++ == *strSource++);

    У Страуструпа шикарный разбор этой строчки.
  • libc для tcc? do not want! С tcc можно даже newlib использовать, тащемто. Зачем извращаться?
  • Serge wrote:Никак.
    Должно быть while(*strDest++ == *strSource++);
    Никак второе - оператором сравнеия "==" копирование не получится. Всеравно спасибо за ответ.
    SoUrcerer wrote:libc для tcc? do not want! С tcc можно даже newlib использовать, тащемто. Зачем извращаться?
    Не понял ни про "do not want!" ни про "Зачем извращаться?" -я не в курсе каких-то дел и мне это к сожелнию ни очем не говорит.

    p.s.
    Две ошибки выявилось и вроде как никого не интересует (в смысле так и осталось).
  • В теме про tcc я выкладывал рабочий tcc и сказал, что его можно отлично использовать с menuetlibc. На деле можно и с newlib. Зачем использовать убогую недолибу?
  • http://websvn.kolibrios.org/filedetails ... t#line-414
    Назначаемые новым потокам идентификаторы монотонно растут.
    Ну и мне стало интересно.
    Этот код:
    Spoiler:

    Code: Select all

    ORG 0
    BITS 32
    ; --------------------------- ;
    MENUET01       db 'MENUET01'
    version        dd 1
    program.start  dd START
    program.end    dd END
    program.memory dd END
    program.stack  dd END
    program.params dd 0
    program.path   dd 0
    ; --------------------------- ;
    START:
    ; thread.create
            mov    eax, 51
            mov    ebx, 1
            mov    ecx, THREAD
            xor    edx, edx
            int    64
            jmp    START
    THREAD:
            or     eax, -1
            int    64
    ; --------------------------- ;
    END:
    И в некоторый момент
    Spoiler:
    1.PNG
    1.PNG (40.16 KiB)
    Viewed 5522 times
    svn4115, VirtualBox, Qemu
    out.kex (62 Bytes)
    уже скомпилированный бинарник
    Downloaded 248 times
  • Ну, так не нужно их в один стек все пихать - у тебя часть потоков тупо умирает, к тому же стек потока у тебя вообще с нулевым адресом - куда он должен уменьшаться по твоему? В несуществующую область памяти? В общем обычный указатель стека затирает код, а указатель стека потоков сразу вызывает PageFault. А CPU сортирует по слоту, а не по PID. Слот же берется первый свободный от начала.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4 wrote:стек потока у тебя вообще с нулевым адресом - куда он должен уменьшаться по твоему? В несуществующую область памяти?
    В моём примере стек вообще не используется.
    Mario_r4 wrote:указатель стека потоков сразу вызывает PageFault
    И почему тогда это не произошло сразу же?
  • 0CodErr wrote:В моём примере стек вообще не используется.
    O RLY?
    0CodErr wrote:И почему тогда это не произошло сразу же?
    Потому что так захотел Ктулху.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4 wrote:0CodErr писал(а):
    В моём примере стек вообще не используется.

    O RLY?
    Покажи тогда, в каком месте это происходит.
  • Who is online

    Users browsing this forum: No registered users and 12 guests