Looking at the code and comparing it with RomWBW HBIOS tms.asm driver, I noticed that the VRAM memory maps are different, causing this effect (specially corrupting the Font Table). This is not a fault on RomWBW's side, but the mappings differ from the ones documented in TI's TMS9918 Programmers Guide that are used in the mentioned example programs.
--
You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/SC4cK6FIyBA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/690bcb70-e3b7-4fe6-a71b-f6f907b90280n%40googlegroups.com.
Not really, the \ESC[...m sequence could be abused... This is my plan... Do you think it makes any sense ?
--
You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/SC4cK6FIyBA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/d985c682-07a5-4132-8cc3-6ef9eda22be3n%40googlegroups.com.
"8.6.3 Function 0x42 – Video Reset (VDARES)
Entry Parameters Returned Values
B: 0x42 A: Status C: Video Unit
Performs a soft reset of the specified Video Unit (C). Will clear the screen, home the cursor, and restore active attribute/color to defaults. Keyboard will be flushed. The current video mode will not be changed. The returned Status (A) is a standard HBIOS result code."
"8.6.8 Function 0x47 – Video Set Character Color (VDASCO) Entry Parameters Returned Values
B: 0x47 A: Status C: Video Unit. E: Color
Assign the specified Color (E) code to be used for all subsequent character writes/fills. This color is also used to fill new lines generated by scroll operations. Refer to the color code table above for a list of the available color codes. Note that a given video display may or may not support any/all colors. The Status (A) is a standard HBIOS result code."
... by adding a "scope" parameter passed in the D register, like D=$FF for Screen and D!=$FF for Character. This sounds more far-fetched to me.
I understand that if there are any actual user programs that use these HBIOS functions this could be disruptive if random values are unintentionally passed in the new registers... But no CP/M "commercial" programs will be affected.
Let me know you're thoughts about this. I'm learning a lot about RomWBW and re-learning Z80... lot's of fun !
--
You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/SC4cK6FIyBA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/d985c682-07a5-4132-8cc3-6ef9eda22be3n%40googlegroups.com.
I understand that apart from having to modify ansi.asm (to add the new custom or "private" sequence), the tms.asm to actually implement the low level hw specific code (TMS register writing), I also have to update hbios.asm to add or modify an API function to link both. Am I right ?
I think we have at least 2 options that could not require a new VDA API (whose function/jump table is actually full as you suspected):
1. Extend the functionality of the VDARES function..."8.6.3 Function 0x42 – Video Reset (VDARES)
Entry Parameters Returned ValuesB: 0x42 A: Status C: Video Unit
Performs a soft reset of the specified Video Unit (C). Will clear the screen, home the cursor, and restore active attribute/color to defaults. Keyboard will be flushed. The current video mode will not be changed. The returned Status (A) is a standard HBIOS result code."
... by adding the desired Foreground & Background combination colors passed in the E register, with the standard format used in HBIOS. This option doesn't seem so 'hackish' because we are changing the default colors that affect the whole screen, as originally intended by the function but limited to fixed default colors set at compile time. This could be my prefered option.
2. Extend the functionality of the VDASCO function..."8.6.8 Function 0x47 – Video Set Character Color (VDASCO) Entry Parameters Returned Values
B: 0x47 A: Status C: Video Unit. E: Color
Assign the specified Color (E) code to be used for all subsequent character writes/fills. This color is also used to fill new lines generated by scroll operations. Refer to the color code table above for a list of the available color codes. Note that a given video display may or may not support any/all colors. The Status (A) is a standard HBIOS result code."
... by adding a "scope" parameter passed in the D register, like D=$FF for Screen and D!=$FF for Character. This sounds more far-fetched to me.
I understand that if there are any actual user programs that use these HBIOS functions this could be disruptive if random values are unintentionally passed in the new registers... But no CP/M "commercial" programs will be affected.
Let me know you're thoughts about this. I'm learning a lot about RomWBW and re-learning Z80... lot's of fun !
--
You received this message because you are subscribed to a topic in the Google Groups "RC2014-Z80" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rc2014-z80/SC4cK6FIyBA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to rc2014-z80+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rc2014-z80/02ffec2c-d574-4a0d-ada2-bc5bb0aec1cen%40googlegroups.com.