Commit Graph

100 Commits

Author SHA1 Message Date
angelosa
775eb69d1d capcom/alien.cpp: stub MB86292 as a device 2023-08-20 00:43:08 +02:00
angelosa
f640bd1d6c video/mga2064w.cpp: add base infrastructure 2023-08-06 02:48:58 +02:00
angelosa
778f805f6a apple/macpwrbk030.cpp: convert macpb180c to use a WD90C26 VGA device 2023-07-15 00:32:32 +02:00
angelosa
e3f493b094 isa/isa_cards.cpp: add Paradise Systems PVGA1 ISA16 card 2023-07-04 19:33:37 +02:00
Angelo Salese
498b7a0a7d
video/pc_vga.cpp: part 2 of interface modernization (#11315)
* video/pc_vga.cpp: update QA, move SVGA related function to bottom of file

* chore: rename clgd542x.cpp -> pc_vga_cirrus.cpp

* chore: move SiS630 SVGA portion to pc_vga_sis.cpp

* chore: intermediate step to convert crtc/seq/attribute/gc_reg_read/write to maps from violating parties

* video/pc_vga_cirrus.cpp: preliminary implementation of hidden DAC mode

* misc/gambl186.cpp: fix compile

* pc_vga_cirrus.cpp: fix gambl186 regression

* chore: convert pc_vga sequencer regs to space memory

* chore: make sure that address_space_config is preserved when inheriting

* trs/vis.cpp: convert VGA to sequencer_map

* chore: move s3virge out of bus/isa

* pc_vga.cpp: convert ATC to attribute_map

* pc_vga.cpp: convert GC to gc_map

* pc_vga.cpp: convert CRTC to crtc_map

* fixes trs/vis.cpp refresh rate by chain reaction (40 Hz -> 61 Hz)

* video/s3virge.cpp: fix regression

* video/pc_vga.cpp: reorder functions

* chore: modernize VGA main I/O interfaces

* video/clgd546x_laguna.cpp: update to latest

* konami/konmedal020.cpp: fix -validate

* video/pc_vga.cpp: use yet another custom address_map_constructor in place of the non-working memory_view pattern

* video/ibm8514a.cpp: address self review [skip ci]
2023-07-04 19:10:46 +02:00
angelosa
5a29fd8903 Add nVidia Geforce 256/Geforce 256 DDR/Quadro 2023-06-26 22:25:00 +02:00
angelosa
fbf356023c Add nVidia Riva TNT (NV4)
misc/ez2d.cpp: repair ez2d2m BIOS from OEM image inside HDD

New systems marked not working
------------------------------
Asus CUBX [The Retro Web]
2023-06-25 05:25:31 +02:00
angelosa
fe898720e9 pc/pcipc.cpp: add base PCI for Cirrus Logic CL-GD5465 Laguna 3D 2023-06-25 03:46:05 +02:00
angelosa
de6a59bd26 scripts/src/video.lua: fix PC_VGA_S3 header 2023-05-31 01:18:34 +02:00
Angelo Salese
93888542d2
video/pc_vga.cpp: part 1 of interface modernization (#11284)
- video/pc_vga.cpp: Move everything that doesn't belong to main VGA/SVGA interfaces to per-manufacturer family files;
- shared/pcshare.cpp: retire pcat_base_state::pcvideo_* fns;
- video/pc_vga.cpp: temporary move gamtor_vga_device to misc/gamtor.cpp;
- bus/isa/isa_cards.cpp: retire TGUI9680 from being selected (all refs points to be a PCI card only, there's mention of a VLB card but haven't seen a single retail dump/photo yet)
- bus/isa/svga_trident.cpp: add TVGA9000 ISA card
- bus/isa/svga_tseng.cpp: add earlier ColorImage ET4000AX variant
- bus/isa/svga_tseng.cpp: add Kasan Hangulmadang-16 Korean variant ISA
- Adds a very preliminary implementation of nVidia Riva 128 PCI card, added as a temp target in pc/pcipc.cpp (pcinv3);
- video/pc_vga.cpp: Rework and fix VGA input sense (necessary to allow Riva 128 to survive POST);
- video/pc_vga_s3.cpp: Fix s3_vga_device inheritance (was subclassing from ati_vga_device)
- pc/calchase.cpp: convert custom JAMMA i/f to ISA device;
- pc/calchase.cpp: connect Trident VGA to ISA bus;
2023-05-30 02:19:46 +02:00
arbee
9de67ba595 video/atirage.cpp: Extremely preliminary emulation of PCI ATI 3D Rage family SVGA chips. [R. Belmont]
apple/powermacg3.cpp: Hooked up ATI Rage II video, you can now enter and interact with Open Firmware. [R. Belmont]
2023-05-18 19:57:03 -04:00
Olivier Galibert
029264ad48 zr36110: Add skeleton
hrdvd: Hook up the mpeg chip
2023-05-07 13:03:59 +02:00
Curt Coder
30e34256b1 abc80: Devicify the SN74S263 character generator. [Curt Coder] 2023-03-28 13:26:59 +03:00
AJR
0cc8539dfa mos8563: Split device source from mc6845 2023-03-25 18:52:27 -04:00
MooglyGuy
3178442049
More MC68EZ328 work for palmm100 and iqunlim (#10696) [Ryan Holtz]
* palm/palm.cpp: Promoted palmm100 to working.  Split Palm LCD into a separate device.
* machine/mc68328.cpp: Improved LCD controller emulation.  Fixed reported Coverity issues
* vidoe/mc68328lcd.cpp: Added a generic device to handle MC68328-style LCD output signals.
* vtech/iqunlim.cpp: Hooked up MC68EZ328 device.

Clones promoted to working
---------------------
3Com Palm m100 [Ryan Holtz]
2022-12-22 03:15:56 +11:00
MooglyGuy
16e265185e
palm/palm.cpp: Improved Palm IIIc support. (#10684) [Ryan Holtz]
* machine/mc68328.cpp: Split MC68328 device into a base class with shared functionality, and derived MC68328 and MC68EZ328 models.
* video/sed1375.cpp: Added roughly-functional implementation of the Epson SED1375 LCD controller.

Machines promoted to working
------------------------
3Com Palm IIIc [Ryan Holtz]
2022-12-16 23:44:37 +11:00
AJR
21c3c10564 Seta X1-001 sprite device cleanup
- Use 16-bit pointer for sprite RAM storage (despite some systems only having 8-bit CPUs)
- Rename device and move to src/devices
- Clean up variable naming in associated drivers
- neobattl: Add DIP switch locations
- krzybowl: Reduce clocks to match known XTAL value
2022-07-01 23:14:45 -04:00
Olivier Galibert
2e8c8a3792 Move avgdvg into devices 2022-07-01 16:23:31 +02:00
AJR
21efb0e47c Start moving devices out of src/mame/shared to more appropriate places 2022-06-28 14:41:16 -04:00
Robbbert
0863066da5 stv: moved video into video/saturn.cpp to remove possible circular dependency. (#8915) 2021-12-01 22:36:51 +11:00
Aaron Giles
6ffc98289c
video/voodoo.cpp: Major rewrite: (#8267)
* Changed to use modern poly.h instead of polylgcy.h.
* Moved helper classes into separate voodoo namespace.
* Derived device classes from video_device_interface.
* Split classes so that later versions derive from earlier versions.
* Created device maps to be directly included.
* Redesigned register mapping to use helper classes and delegates.
* Rewrote rasterizers to use C++ templates instead of macros.
* Added logic to compute equations for color/texture combine units.
* Added special generic identity-texel rasterizer cases.
* Removed pipeline stalls on texture and palette changes.
* Removed pipeline stalls on most all parameter changes.
* Generally re-thought and cleaned up logic throughout.
* Parameterized cycle stealing on status reads; updated all existing voodoo consumers to configure it as it was before.

-vidoe/poly.h: Various improvements:
* Exposed poly_array class for broader use.
* Changed poly_array to intelligently determine maximum size.
* Added logic to track multiple "last" instances in poly_array.
* Extended logic to support up to 16m work items.
* Removed MaxPolys parameter from poly_manager template.
* Added Flags parameter to poly_manager template.
* Added POLY_FLAG_NO_CLIPPING flag to remove clipping code when not needed.
* poly_manager now supports a MaxParams value of 0.
* Made paramcount a template parameter for render_* functions.
* Added reset_after_wait() method to be overridden by derived classes.
* Switched to using std:: helpers instead of internal methods.
* Removed useless dependency on screen_device.
* TRACK_POLY_WAITS now produces more complete statistics.

-video/polylgcy.cpp: Removed legacy implementation of polygon renderer.

-machine/gt64xxx.cpp: Prevent lockups by disallowing 0-duration timers.

-machine/pci.cpp: Added support for adding subdevice maps directly.

-emu/video/rgbsse.h: Improved min/max for SSE4.1+ and scale+clamp operations for all.

-emu/vidoe/rgbutil.h: Made palette expansion constexpr and added argbexpand function.

-osd/osdcore.cpp: Changed osd_ticks to use QueryPerformanceCounter on Windows since the mingw std::chrono::high_resolution_clock is anything but.
2021-07-09 11:35:00 +10:00
Nigel Barnes
8aacde2c3f saa5240.cpp: Preliminary SAA5240/43 Computer Controlled Teletext emulation. 2020-12-25 00:09:52 +00:00
Ryan Holtz
7ebdb0bd97 New machines marked as NOT_WORKING
------------------
Hewlett-Packard Jornada 720 [Ryan Holtz]

* arm7: Fixed interaction between instruction prefetching with the MMU enabled. [Ryan Holtz]

* sa111: Added skeleton device for Intel SA-1111 Microprocessor Companion Chip. [Ryan Holtz]

* sed1356: Added skeleton device for Epson/Seiko SED1356 video controller. [Ryan Holtz]

* sa1110: Various cleanups. Added rudimentary SSP module support. [Ryan Holtz]
2020-12-24 18:59:14 +01:00
Olivier Galibert
b644308114 mu5: Add the lc7985nd and the lcd [O. Galibert] 2020-11-05 14:00:00 +01:00
Sandro Ronco
2dbfe3db33 pce220.cpp: split HD61202 and SED1560 into separate devices. [Sandro Ronco]
Machines promoted to WORKING
----------------------------
Sharp PC-E220 [Sandro Ronco]
Sharp PC-G815 [Sandro Ronco]
2020-10-31 23:36:12 +01:00
hap
b44810404e added Hughes HLCD 0438 LCD Driver device 2020-07-24 13:31:36 +02:00
hap
623dc28919 Machines promoted to working
----------------------------
Monty Plays Scrabble [hap]
Master Monty [hap]
2020-05-08 21:39:17 +02:00
hap
1c728274e9 microvsn: move lcd chip emulation to device (nw) 2020-04-12 15:37:21 +02:00
hap
d708a86325 added Philips PCF2100 LCD Driver (nw) 2020-04-10 15:33:13 +02:00
David Haywood
389126869f
Plug & Play / sh6578 work (#6447)
* PPU refactoring (nw)

* PPU refactoring (nw)

* start making a new device (nw)

* PPU device refinements (nw)

* tear things down (nw)

* refactoring (nw)

* more refactor and teardown (nw)

* (nw)

* rebuilding (nw)

* (nw)

* (nw)

* (nw)

* (nw)

* checkpoint (nw)
2020-03-15 15:26:47 -04:00
hap
323914f25b added Hitachi HD61603 LCD Driver (nw) 2019-12-08 19:47:30 +01:00
hap
cc116dc972 added LC7582 LCD Driver (nw) 2019-12-06 02:25:10 +01:00
Vas Crabb
4b414fa45b clean up some .hxx abuse (nw) 2019-10-05 14:02:58 +10:00
AJR
9afcd9c9b9 acorn_vidc: All right, move this back to src/devices/machine (nw) 2019-09-20 11:12:44 -04:00
AJR
0917a7295f acorn_vidc: Move to src/devices/video and fix full build (nw) 2019-09-20 10:13:01 -04:00
Olivier Galibert
5eff6a0beb Sigh (nw) 2019-09-05 09:38:52 +02:00
Olivier Galibert
e6ecaac339 vrender0: Fix link by moving mame/video/vrender0 to devices (nw) 2019-09-05 09:37:27 +02:00
hap
0617790932 add md4330/4332 lcd driver (nw) 2019-08-21 14:52:35 +02:00
mahlemiut
d7267c1cdd pcipc: added a slightly more usable PCI S3 Virge/DX video card.
s3virge: added PCI interface, and linear framebuffer support. [Barry Rodewald]
2019-08-09 15:00:48 +12:00
AJR
6a3e79f9a7 e9161: Add skeleton CRTC device; document SIO accesses (nw) 2019-08-03 10:51:44 -04:00
Patrick Mackinlay
ca8cd90e2b bt431: new device (nw) 2019-07-23 17:55:17 +07:00
Patrick Mackinlay
4c15ecdbb6 bt47x: new device (nw) 2019-06-20 18:28:06 +07:00
hap
ed0202220a screenless: make it a device (nw) 2019-06-14 17:45:53 +02:00
AJR
610897fd38 Preliminary emulation of T6963C and related LCD controllers 2019-05-06 20:27:20 -04:00
Vas Crabb
97b6717027 (nw) Clean up the mess on master
This effectively reverts b380514764 and
c24473ddff, restoring the state at
598cd52272.

Before pushing, please check that what you're about to push is sane.
Check your local commit log and ensure there isn't anything out-of-place
before pushing to mainline.  When things like this happen, it wastes
everyone's time.  I really don't need this in a week when real work™ is
busting my balls and I'm behind where I want to be with preparing for
MAME release.
2019-03-26 11:13:37 +11:00
andreasnaive
b380514764 Revert "conflict resolution (nw)"
This reverts commit c24473ddff, reversing
changes made to 009cba4fb8.
2019-03-25 23:13:40 +01:00
hap
f86ffd0802 added mm5445_device (nw) 2019-03-07 21:06:38 +01:00
AJR
44f375b47d Add skeleton CRT9028 device (nw) 2019-02-03 13:13:30 -05:00
arbee
32703cfa5a decstation: move SFB video chip to separate device for future AlphaAXP sharing [R. Belmont] 2019-01-20 21:29:32 -05:00
Sven Schnelle
f6efe2921f add HP98550 high-res color graphic card
Used in the high end HP9000/300 machines. Provides a resolution
of 1280x1024 @ 8bpp. It also provides two overlay planes and one
phantom plane. Each plane contains two window movers that are used
for copying characters and tiles on the screen. It also has a RUG
for line/vector drawing. The current state implements everything
that is required to have a working HP Visual user environment in
MAME.

Working:

- window mover
- pixel replacement rules
- window replacement rules
- f0 tripple replacement rule (copy src or keep destination depending on pattern register)
- VRAM bit access mode
- solid line drawing

Not implemented yet:

- drawing circles
- linetype vector/circles
- rectangles
- filling areas
- tripple replacement rules other than f0
2018-11-18 23:18:36 +01:00