Agradeço a informação, vai acrescentar meus conhecimentos.

Também sou da época dos TK85/2000... MSX.
Ainda tenho uma revista da Micro Sistemas, tenho uma edição que fala de 
Realidade Virtual com o Delphi, quem fez a matéria foi Renato Degiovane, 
que hoje ele tem um site de jogos feitos com o Delphi, usando ActiveX, 
OpenGL, etc... O site dele chama-se Club Tilt ( http://www.clubtilt.net 
). Acho que você sabe.
Já cheguei a conversei com ele a muito tempo atrás sobre desenvolvimento 
de jogos.

Blz.


Rubem Rocha escreveu:
>
>
> Essa função InKey que eu codifiquei nessa dica é usei faz uns 5 ou 6 anos
> atrás pra implementar um ‘ovo de páscoa’ em um software. Funcionou bem na
> época. A unit revisada ficou assim;
>
> unit uKbdTools;
>
> interface
>
> procedure ClearInputMessages;
>
> function InKey(Secs: Double): integer; overload;
>
> function InKey(MSecs: LongWord): integer; overload;
>
> implementation
>
> uses
>
> Windows, Messages;
>
> // Limpa mensagens de entrada (teclado e mouse) da fila de mensagens do
> Windows.
>
> // Não existe no Windows a figura do buffer de teclado!!!!
>
> procedure ClearInputMessages;
>
> var
>
> Msg: TMsg;
>
> begin
>
> while PeekMessage(
>
> Msg, 0, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE or PM_QS_INPUT) do ;
>
> while PeekMessage(
>
> Msg, 0, WM_MOUSEFIRST, WM_MOUSELAST, PM_REMOVE or PM_QS_INPUT) do ;
>
> end;
>
> function InKey(Secs: Double): integer;
>
> var
>
> Msg: TMsg;
>
> TickCount: DWORD;
>
> MSecs: DWORD;
>
> lResult: BOOL;
>
> begin
>
> Application.ProcessMessages;
>
> Result := 0;
>
> MSecs := Trunc(Secs * 1000);
>
> TickCount := GetTickCount();
>
> repeat
>
> lResult :=
>
> PeekMessage(Msg, 0, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE or PM_QS_INPUT)
>
> until (GetTickCount() - TickCount >= MSecs) or lResult;
>
> if lResult then
>
> Result := Msg.wParam;
>
> end;
>
> function InKey(MSecs: LongWord): integer;
>
> var
>
> Msg: TMsg;
>
> TickCount: DWORD;
>
> lResult: Boolean;
>
> begin
>
> Application.ProcessMessages;
>
> Result := 0;
>
> TickCount := GetTickCount();
>
> repeat
>
> lResult := PeekMessage(Msg, 0, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE or
> PM_QS_INPUT)
>
> until (GetTickCount() - TickCount >= MSecs) or lResult;
>
> if lResult then
>
> Result := Msg.wParam;
>
> end;
>
> end.
>
> Em tempo: (1)Sobre o que vc comentou a respeito de acessar discos 
> rígidos, o
> terreno é árido e muito infértil. Vc vai ter que pesquisar e muito 
> como ter
> acesso a um disco rígido em baixo nível passando por cima das 
> prerrogativas
> do sistema operacional. Parei de pesquisar por conta do meu tempo como
> desenvolvedor e analista. (2)Nos meus tempos áureos de colaboração à 
> finada
> (porém, excelente) revista Micro Sistemas, desenvolvi um utilitário em 
> Turbo
> Pascal 5.5/6.0/7.0 que lia a MBR de um HD e salva as informações das
> partições, juntamente com os parâmetros do HD lidos da memória CMOS do
> setup, em um arquivo binário. Era uma maneira de tentar recuperar o 
> setor de
> boot do disco em caso de algum problema ocasionado por vírus. Funcionou
> muito bem na época. Fora algumas coisas legais que eu consegui fazer em
> Clipper, como por exemplo criar classes de verdade para usar no 
> Clipper 5.x.
>
> Resumo da ópera: Eu tb já fui escovador de bits! Até programas TSR em 
> Pascal
> e Assembly eu já fiz! (Mas o que é TSR? Wikipédia, amigo!) ;)
>
> Sds.
>
> De: delphi-br@yahoogrupos.com.br 
> <mailto:delphi-br%40yahoogrupos.com.br> 
> [mailto:delphi-br@yahoogrupos.com.br 
> <mailto:delphi-br%40yahoogrupos.com.br>] Em
> nome de EmbarcaDelphi
> Enviada em: quarta-feira, 27 de maio de 2009 20:23
> Para: delphi-br@yahoogrupos.com.br <mailto:delphi-br%40yahoogrupos.com.br>
> Assunto: [delphi-br] Para: Rubem (você esqueceu?)
>
> E aí Rubem,
>
> Navegando na Net pesquisando por umas questões pouco difundidas eu me
> deparei com uma mensagem sua que iria retornar, a mensagem era de 2008.
> O link é este:
>
> http://cincobytes.net/simular-inkey-do-clipper-no-delphi/ 
> <http://cincobytes.net/simular-inkey-do-clipper-no-delphi/>
>
> Teve mais novidades a este respeito?
>
> Não sei em que situação poderia utilizar esta rotina, mas, acabei caindo
> nesse link.
>
> De vez em quando eu pego uma função da API do Windows (coisa que nunca
> usei e fiquei curioso) e vou navegando na internet para estudar, creio
> que poucas pessoas fazem isso. É pena que muitas coisas não se encontram
> no idioma português (meu inglês é muito fraco), mas vendo o código dá
> para ter uma idéia do que se trata, como não uso Banco de Dados, só
> busco por APIs e coisas de baixo nível.
> A pouco tempo atrás eu descobri como acessar uma partição EXT2 de dentro
> do Windows, podendo lêr ou gravar nesta partição, também na partição
> ReiserFS. Coisa que para muitos isso seria impossível, visto que só na
> linguagem C se faz., kkkkk.
>
> Estou fazendo uma proteção para meu programa e estou desenrolando, ainda
> falta muitos ajustes, como criar a partição EXT2.
>
> Só queria ver como criar uma partição pelo Delphi (FAT32 e EXT2), ainda
> estou pesquisando. Um dia acho algo. Se alguém souber alguma informação
> a respeito então será muito bem-vinda. Teve um colega aqui na lista que
> tava procurando, não sei se ele encontrou...
>
> Blz.
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 



------------------------------------

-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    delphi-br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a