• Print

Vdmgr 0.1.6

Description

Overview

It is a library that manages modules (※1) that emulate the functions such as CPU, memory, devices, and so on from small items such as clock generator, address bus, and input / output pins, and analyze files and debug information .

System configuration file (※2) on, only to describe the connection between the module, its own system (※3) only create a text file (※4) can, system configuration file that you created, Vdmgr (※5), Vdmgrdebug (※6) to move on the application It is possible.

Modules are created in basic C language.
It exchanges with other modules via interfaces (table of function pointers), but all modules operate in units of 1clk.
Therefore, it is not necessary to consider the type of module to be connected, operation timing, etc. (※7).
You only need to think about the modules you create so you can create, modify, and modify modules relatively easily.

Also, if you create JTAG, ROM monitor, other modules that work with real devices, you can say that you want to debug on vdmgrdebug (※8).

 

※1 A component that has one or more functions necessary for creating a system is called a module.
There are modules that emulate only CPU and memory, and modules with multiple functions such as CPU + memory + debug information analysis.
※2 It is a text file with almost the same format as Windows standard .ini file.
※3 A system that combines one or more modules and makes something work is called a system.
For example, the NGPocket system emulates NEOGEO POCKET.
※4 When you want to create a system with 10 Z80s, you can easily create it with just a text file.
※5 It is possible to say that it is an application dedicated to executing and to operate in full screen display.
※6 Execution, debugging (source level debugging possible if there is a debugging module), an application for performance analysis.
※7 In the case of the NGPocket previously created, I was told to move the CPU by the amount of one line to be drawn, draw at the timing of H - SYNC, repeat it until V - SYNC.
With this method, you can not deal with processing such as palette change in the middle of screen drawing.
As for the libvdmgr module, it is possible for the CPU to move freely for each module as it said that the CPU needs only the clock required, the drawing waits for the dot clock.
Especially when it is severe on the clock like a family computer, you can not emulate completely unless you operate it in 1 clock unit.
※8 Of course, it can not cooperate with modules that only work in virtual environments (eg performance analysis).

 

Processing has changed significantly with v.0.1.0.

List of files required for system operation

system-name Required files Description
GMC-4 None Nothing in particular.
HVC-001 Vdmgr / bios / disksystem.rom In order to operate DISK SYSTEM, an image file (8 KB) of the DISK SYSTEM RAM adapter is required. Save the
DISK SYSTEM RAM adapter as
saved in a file with the name disksystem.rom and copy it to the bios folder.
When operating ROM only, no image file is necessary.
MCS BASIC-52 Vdmgr / bios / BASIC-52.BIN Firmware is required. Download /
decompress base52all.zip from MicroControllers and Electronics and copy the
"BASIC - 52.BIN" file to the bios folder.
MSX Vdmgr / bios / cbios_main_msx1_jp.rom,
or
vdmgr / bios / msx.rom
BIOS image file is required. Download / decompress the
BIOS from the C-BIOS and
copy the "cbios_main_msx1_jp.rom" file to the bios folder.
NEOGEO POCKET Vdmgr / bios / ngpbios.rom
vdmgr / bios / ngcbios.rom
BIOS image file is required.
Sucks out 0x0000 - 0xffff of the actual machine, if it is
NEOGEO POCKET ngpbios.rom, for NEOGEO POCKET COLOR
save it to the file with the name of ngcbios.rom , copy it to the bios folder.
SC-3000 + SF-7000 Vdmgr / bios / sf7000.rom,
or
vdmgr / bios / sf7000.sc
The SF - 7000 ROM image file (8 KB) is required to operate the SF - 7000. Save the
SF-7000's ROM as a sf7000.rom or sf7000.sc
file and save it to the BIOS folder.

When operating only SC-3000, no image file is necessary.
SG-1000 / SEGA MARK III None Nothing in particular.
TD 4 None Nothing in particular.
Z80 video game ALL 8255.bin, or ALL 8255.HEX
(Select firmware from the menu to open) Since permission

was received from Mr. Ishizu, firmware binary is unnecessary .
Firmware is
necessary (not necessary when moving your own firmware).

Source etc. can be downloaded from double-sided tape wiring type electronic work .
ColecoVision Vdmgr / bios / ColecoVision.rom BIOS image file is required.
Sucks out 0x0000 - 0x1fff of the actual machine, saves it to the
file under the name of ColecoVision.rom, and copies it to the bios folder.



For Windows

Operating environment

OS Operation confirmation with Windows XP / 7/8/10 (7 only check with 32/64 bit, others are only 32 bits)
CPU Atom 1.67 GHz / Core 2 Quad Operation check at 2.66 GHz
Memory Operation confirmation in 2 Gbyte or more environment
Video / Sound Working with DirectX 9.0c

 

Installation

Download the file from Download and unpack it to the appropriate directory.

 

uninstall

Since registry is not used, please delete the installed directory.

 

Execution

Execute vdmgr.exe or vdmgrdebug.exe in the installed directory .
From the menu, select "Edit" - "Advanced settings" and then select the target system.

 

About errors

If the following error is displayed, please install " DirectX End User Runtime " from Microsoft 's page .

 

Image



For Raspberry Pi

Operating environment

OS Operation confirmation with RASPBIAN (2014-01-07)
Model Operation confirmation with Model B

 

Installation

Download the file from Download and unpack it to the appropriate directory.

 

uninstall

Delete the installed directory.

 

Execution

Execute vdmgr in the installed directory.
After selecting the target menu, select the target system.

Acknowledgments

I am using zlib 1.2.7 to decompress the zip file.
Thank you very much for your useful library.

Official website: http://zlib.net/

Changelog

2017/04/09

 

Modify / Add

Z80 video game

  • Since I got permission to use the farm, I attached a farm.

Libvdmgr / vdmgr

  • Added pause.

  • When loading error in debugger, change log window so that it is active.

  • Fixed vdmgr falling when ending with the data recorder playing.

  • At the first startup, changed to look at the user's locale and set the language. .

HVC-001

  • Corresponding to Mapper 190

  • Fixed not referring ROM database.

  • Fixed incorrect x position of screen division of MMC 5.

  • Fixed the scroll of fractional position in y direction of screen division of MMC 5.

  • Fixed wrong valid bit of extended sound source of MMC 5.

  • It corresponds to the PCM reading mode of MMC 5 (interrupt not supported).

  • MMC 5 NES 2.0 compatible.

  • Fixed that the first bank at the time of VRC 7 reset was wrong.

  • It corresponds to NES file output from assembler.

  • Corrected address abnormality at bank switching of assembler.

  • Fixed that bracket could not be processed correctly by assembler.

  • Add assembler macros and functions, pseudo instructions such as reading bit map files.

  • Added "Darius mock" to the assembler and MMC 5 samples.

Sg-1000 / SEGA MARK III

  • Fixed that sprite drawing priority was reversed.

  • Supports double display of sprite.

  • Fixed to update the VRAM address after register writing of VDP 315-5124 (same as TMS9918).

  • Fix that the sprite of the NAME / SPR / PTN / COL window is not displayed correctly when the sprite is 8 × 16.

  • ROM database added.

  • Corresponds to the CODEMASTERS mapper (resolution of 256 × 224 is not supported).

Flash writer

  • Added a reload button.

  • If the size of the write data is the same as that of the last read data, change the setting so that it does not initialize

Links

Homepage

Downloads

Gallery