summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes
diff options
context:
space:
mode:
author sasuke-arcade <58130089+sasuke-arcade@users.noreply.github.com>2019-11-27 23:48:13 +0900
committer Angelo Salese <angelosa@users.noreply.github.com>2019-11-27 15:48:13 +0100
commit9216ceca6473c7ae27ed9ca0fdc2e89650043b4e (patch)
treeb56f6759451d69b77375c929cddc794e01869c68 /src/mame/includes
parente2358318322e3286f673677da02c53ed2f7a6120 (diff)
skyfox.cpp : Improve background based on PCB (#5976)
* skyfox.cpp : Improve background based on PCB The previous background implementation was completely wrong. I found stars position stored in memory. I used this to rewrite the background drawing code. Reference PCB video: - https://www.youtube.com/watch?v=oyE1CfcVrDc - https://www.youtube.com/watch?v=5QhTNrNH-CU * Remove debug code. * Organize code and adjust display - Split background VRAM and work RAM from addresses map - Rename DECLARE_WRITE8_MEMBER - Remove unused interupt declarations - Adjust background star display * Fixed problems with flipscreen - Adjust sprite position - Remove background flip
Diffstat (limited to 'src/mame/includes')
-rw-r--r--src/mame/includes/skyfox.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mame/includes/skyfox.h b/src/mame/includes/skyfox.h
index 85baf20e8b8..1f93181d49d 100644
--- a/src/mame/includes/skyfox.h
+++ b/src/mame/includes/skyfox.h
@@ -25,7 +25,8 @@ public:
m_screen(*this, "screen"),
m_palette(*this, "palette"),
m_soundlatch(*this, "soundlatch"),
- m_spriteram(*this, "spriteram")
+ m_spriteram(*this, "spriteram"),
+ m_bgram(*this, "bgram")
{ }
void skyfox(machine_config &config);
@@ -43,16 +44,15 @@ private:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
required_shared_ptr<uint8_t> m_spriteram;
+ required_shared_ptr<uint8_t> m_bgram;
- int m_bg_pos;
int m_bg_ctrl;
- DECLARE_WRITE8_MEMBER(skyfox_vregs_w);
+ DECLARE_WRITE8_MEMBER(output_w);
virtual void machine_start() override;
virtual void machine_reset() override;
void skyfox_palette(palette_device &palette) const;
uint32_t screen_update_skyfox(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- INTERRUPT_GEN_MEMBER(skyfox_interrupt);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_background(bitmap_ind16 &bitmap, const rectangle &cliprect);