-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
konami/konamigv: Add printer support for Tokimeki Memorial Oshiete Your Heart #12233
Conversation
…ur Heart Machines promoted to working -------------------------- Tokimeki Memorial Oshiete Your Heart (GQ673 JAA) Tokimeki Memorial Oshiete Your Heart Seal Version (GE755 JAA) Tokimeki Memorial Oshiete Your Heart Seal Version Plus (GE756 JAB)
else if (m_printer_data[0] == 0x10) | ||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My gut feel is that this should wait for vertical blanking to ensure it gets a properly rendered frame. Can you start a timer on receiving this message to wait until some arbitrary point early in the vertical blanking interval to ensure you grab a frame after the final screen update for the frame happens?
In real life, the printer is going to have to see a complete frame after receiving this command (i.e. wait for current frame to complete, then start capturing at the top of the next frame).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this seem sane for what you're suggesting? eab9298
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, looks about right.
5029c0c
to
eab9298
Compare
src/mame/konami/konamigv.cpp
Outdated
bool m_printer_is_manual_layout; | ||
bool m_printer_page_is_dirty; | ||
int m_printer_video_last_vblank_state; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
m_printer_video_last_vblank_state
is registered for save states, so it should be an explicitly sized integer or bool
.
HLE implementation of the printer Sony UP-1200 analog video printer used by Tokimeki Memorial Oshiete Your Heart. The printer receives an S-Video signal from the subboard PCB and separately a communication line to control the machine.
tmosh
andtmoshs
only take and print one picture, buttmoshsp
takes 16 different pictures and uses the 16 image layout setting of the printer.The printer output is shown as a second screen as can be seen in the example pictures below.
tmosh (1 large image):
tmoshs (Konami logo position changes, text and icon in the very center of the picture):
tmoshsp (Konami logo and Tokimeki Memorial logo are always in the same spot):
Here's a picture of multiple prints from both the
tmosh
version and thetmoshsp
version for layout reference.This PR also promotes the games to working, except for the
tmoshspa
clone which has a note about the CD being damaged.