Re: Hooks.
>(1) Where can i find detailed information about all hooks of the msx system. Check out MSX2 Technical Handbook on my HP (see signature). * XVII MSX USERS MEETING IN BARCELONA: APRIL 30th 2000 * Konami Man - AKA Nestor Soriano (^ ^)v - Itsumo MSX user New web address: http://konamiman.msx.tni.nl & http2//nestor.msx [EMAIL PROTECTED] ICQ#: 18281450 "Windows 2000" is just the abreviation for "Windows 62000 failures" MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put "unsubscribe msx [EMAIL PROTECTED]" (without the quotes) in the body (not the subject) of the message. Problems? contact [EMAIL PROTECTED] More information on MSX can be found in the following places: The MSX faq: http://www.faq.msxnet.org/ The MSX newsgroup: comp.sys.msx The MSX IRC channel: #MSX on Undernet
Hooks.
(1) Where can i find detailed information about all hooks of the msx system. (2) What are the main differences between msxdos2.20 and msxdos2.31 (3) Where can i find detailed information about msx-basic (all calls) greetz dre MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put "unsubscribe msx [EMAIL PROTECTED]" (without the quotes) in the body (not the subject) of the message. Problems? contact [EMAIL PROTECTED] More information on MSX can be found in the following places: The MSX faq: http://www.faq.msxnet.org/ The MSX newsgroup: comp.sys.msx The MSX IRC channel: #MSX on Undernet
Hooks
I have a question about the use of hooks I've never worked widh hooks (!!), and now I'm learning MSX1 assembler. I have a routine that redefines a character (in screen 2, in the three pattern tables), and it ends with a ret. How can I use hooks to make this automatic? That is, I want that the routine is called 50 times per second. Thanks ++ |Toni Burguera Burguera | ++ | E-mail :[EMAIL PROTECTED] | ++ |9D - La Novena Dimensio | | http://www.geocities.com/Area51/Dimension/9812 | ++ MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
Re: Hooks
At 12:43 PM 07/05/98 +0200, you wrote: >I have a question about the use of hooks >I've never worked widh hooks (!!), and now I'm learning MSX1 assembler. >I have a routine that redefines a character (in screen 2, in the three >pattern tables), and it ends with a ret. >How can I use hooks to make this automatic? That is, I want that the routine >is called 50 times per second. Use hook H_TIMI (FD9F). Make sure you copy the original contents of that hook (5 bytes) to a location in your program and execute it that after your routine ends. Example: MyHook: ;(your routine) OldHook: db 0,0,0,0,0 InstallHook: di ;backup old hook: ld hl,#FD9F ld de,OldHook ld bc,5 ldir ;install new routine: ld a,#C3;opcode for JP ld hl,MyHook ld (#FD9F),a ld (#FD9F+1),hl ei ret RemoveHook: di ;restore old hook ld hl,OldHook ld de,#FD9F ld bc,5 ldir ei ret Bye, Maarten MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
Re: Hooks
On Sun, 5 Jul 1998, Antoni Burguera wrote: > I have a routine that redefines a character (in screen 2, in the three > pattern tables), and it ends with a ret. There is a faster way to redefine all three pattern tables at the same time in SCREEN 2. You can just do a VDP(4)=0. This command enable a undocumented feature of MSX-1: SCREEN 2 with only one pattern table!! You still have three color tables, but this also can be changed with a VDP(3)=&h9F. By doing some tricks, you can enable this mode and make the BASIC think it's running in SCREEN1. This way, you can use PRINT commands to have fast shape movement on screen, and still have 16 colors per characters, like in SCREEN 2. This undocumented feature is used in "LIKE", the best graphic environment for MSX-1. A variant of this technique is used in the game "Thing Bounces Back", but the game does a VDP(4)=2 and get the first two tables equal, and only the third different. I'm not sure if this works in all MSXs. It works fine on my Expert 1.1, and it was tested in MSX2+ and T-R GT with success. But some tests on the Turbo-R ST failed. Maybe someone out there with T-R ST could test it and tell the results? Ricardo Bittencourt http://www.lsi.usp.br/~ricardo [EMAIL PROTECTED]"Save the trees: eat more woodpeckers" MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
Antwort: Re: Hooks
[EMAIL PROTECTED] am 05.07.98 18:48:00 Bitte antworten an [EMAIL PROTECTED] An:[EMAIL PROTECTED] Kopie: (Blindkopie: Wolfgang Oberleithner/ISOVOLTA/AT) Thema: Re: Hooks >There is a faster way to redefine all three pattern tables at the >same time in SCREEN 2. > >You can just do a VDP(4)=0. This command enable a undocumented >feature of MSX-1: SCREEN 2 with only one pattern table!! You still have >three color tables, but this also can be changed with a VDP(3)=&h9F. This sounds very similar to the ReAdressing I use in my programs. Check the technical databook of the VDP. To each screen you have values for the Registers which can be changed to get a different starting adress for some VDP-parts. Take a register, look at the bits-definition, for example: 0 0 0 A15 A14 A13 1 1 If you set the "MUST"-bits (1) to zero, the range of the vram-area is divided by two. That means: 0 1 at the end: half the range 0 0 at the end: quater the range... This one is based on a theory of mine, but it works! If anyone can correct it - pls do so... >I'm not sure if this works in all MSXs. It works fine on my Expert >1.1, and it was tested in MSX2+ and T-R GT with success. But some tests on >the Turbo-R ST failed. Maybe someone out there with T-R ST could test it >and tell the results? Obove mentioned things work on my modified 2+ and I think on the tR too... greetz wolfgang MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)