How to play midi music in VirtualBox Windows 98? [closed] - audio

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 6 years ago.
Improve this question
I'd build a Windows 98 VM in my Mac with VirtualBox to run some old games, like "Z". It is running, but without the great soundtrack. When testing, I realize that the soundtrack is in midi files, and not even Media Player is playing any midi. It opens the file, knows time etc. (recognize the file) but no sound is played.
There is a Sound Blaster Midi Sinth installed, the problem might be the VM itself that don't emulate the full Sound Blaster 16 card. I'm thinking about some alternatives: to change the VM sound card (not a clue of how to do it), or to install a driver that synthesizes the midi in wave to use the wave port that is working, but didn't find one.
Also couldn't get in the Virtual Box forum, I'd make an Oracle profile, but didn't work. So here I am… any ideas?

(Although I did not try with Z or another game I tried with other/similar MIDI software...)
B)-setup-based (WinXP)
It works great with my B) setup (see below) based on a WinXP VM and the separately to be installed ICH AC97 Audio driver:
setup WinXP VM
set audio hardware emulation to ICH AC97
everything should work fine then without distortions or hickups
maybe choose Microsoft GS Wavetable over Microsoft MIDI mapper since the sounds are much nicer then
(the latest Realtek Intel HD Audio Driver for WinXP did not work for me - installed ok, restarted but was not found nor can be manually assigned)
A)-setup-based (Win7)
And then it works only basically with my A) setup (see below) based on a Win7 VM and
the Intel HD Audio driver (default)
some MIDI file played in Windows Media Player
but:
playing a MIDI file in Windows Media Player is fine
playing the MIDI file in my music software Band-in-a-box 12 over Microsoft MIDI mapper or Microsoft GS Wavetable is crappy with delays, jumps and distortions
It also seems to work with the AC97 driver on Win95 and Win98
(Trying with some MIDI-based music program I first thought it did not work and tried with all the available AC97, Soundblaster 16, Intel HD Audio drivers and did not see some MIDI device in the device manager.
But it seems MIDI support is not mapped to a device and the problems are related to the software I tried it with.)
my setups
Band-ina-box 12 as the app to test it
A)
no special XP exe emulation setup done
Win7 32bit guest
Win8.1 64bit host
Virtual Box 4.3.28 (latest, 2015-06-01)
B)
tried some XP exe emulation variants which did not help with the distortions and hickups
WinXP guest
Win8.1 64bit host
Virtual Box 4.3.28 (latest, 2015-06-01)

The standard MIDI port is 440, make sure your software is configured correctly to use the card (though judging by your level of knowledge in asking I'd imagine you've done this).
While this isn't specifically an answer about making VirtualBox do what you want, I'd recommend DOSBox when doing DOS or Win3x gaming over a regular virtual machine for performance and emulation accuracy.
You can get any DOS-based Windows (including 95) running on DOSBox or at least one of the patched builds of it (I recommend Taewoong's build at http://ykhwong.x-y.net/ as it is the most feature-complete). You could probably make 98, 98SE, and ME run on DOSBox too, but anything that won't run on 95 can probably be made to run on a modern version of Windows with less trouble.

Related

Windows 10 Black Screen and Spring Tools Suite?

I just got a new laptop that came with Windows 10 Operating System. I'm trying to setup workspaces that use Spring Tools Suite on my system. I've tried both the 4.5.2 and 4.6 versions of STS from the site.
The problem I'm encountering is that if I leave STS open for a period of time or if I try to perform certain operations such as a Run Configuration I will just see a black screen and am unable to do anything.
Anytime I see the black screen the only common thing is that I had STS open, so my assumption is that the issue may relate to STS. I could be completely wrong and this be unrelated to STS entirely but I can only reproduce the problem when STS has been open.
Two Questions, can anyone please provide any insight as my searches online aren't providing any resolution
1. Any special configuration others have run into for Windows 10 and STS?
2. If I get the black screen, how can I recover other than a hard power off, others experience with this?
Thanks for your input
I've been able to get past this issue by updating a number of drivers on my machine from Dell support page. I use a Dell Precision 5510 and was able to go to Dell support site and search for drivers for my machine.
I did the following Steps to fix my Precision 5510
Go to Dell Support Page
Click on Support
Click on Drivers and Downloads
Click on tab 'Find it myself' so you can select drivers you want
Scroll to bottom of the page and click on the line highlighted in blue that reads, Browse all drivers for Precision 5510
In list of drivers choose Chipset drivers
There may be other drivers that you need to install but adding the following fixed my issues
Be sure to restart your machine after install/update of each driver
Basic Input/Output System (BIOS)
Intel(R) Thunderbol 3 Controller Driver
Install the Firmware Update
Realtek USB GBE Ethernet Controller Driver
Realtek USB Audio Driver
Patch for the USB audio/mouse issue
Combination of the above or one of the drivers fixed my issue, I'm not certain which one Spring Tools depended on but it does not crash to a black screen now after updating these drivers.

Benefits of UNIX or UNIX variant on microcontroller?

This may be a foolish question but I've been searching around for some time and don't see a clear answer. I've seen several microcontrollers advertised as running Unix-like software (Linux, Ubuntu) for example, the BeagleBone Black and Arduino Yun. Can someone please explain to me the benefit of this? So far I've used a couple of microcontrollers like the Arduino Uno/Duo, Freescale FRDM and STM32 Discovery which either didn't have this feature or I was not aware of it. I'm starting to see it more and more on newer microcontrollers so I'd like to know what it brings to the table.
Full disclosure: I've had minimal exposure to UNIX and its variants so far so please talk slowly and use small words =)
Hope to hear from you,
Yusif Nurizade
You get complex drivers already included Linux for free (USB, internet protocols, storage media and file systems).
You can use lots of free software for the things not included in the kernel.
It is simpler to develop software on a full OS (easier to debug, look what is going on, change the configuration, etc etc).
The drawback is that the real-time capabilities are generally worse than for some small RTOS, and it needs more resources (a couple of megabytes memory).
In the heart of all Android and iphone is a Embedded Linux System. Without getting too deep
Linux + Java = Android
BSD Unix variant + C/C++/Object C = iOS
Now if you get deeper the above two statement can be argued for accuracy
All Android devices run on ARM based microprocessors. Beaglebone is one such open source hardware platform with can run Android as well as Embedded Linux distribution and even a Ubuntu.
Now (IMHO) Ubuntu is primarily for desktop and server application. Many of the popular computer server farms uses Ubuntu.
Now STM32 is a ARM based CORTEX-M micro control. Once again (IMHO) is mostly used for bare metal embedded applications. I have hard that FreeRTOS can be ported to TM4C123 ARM Cortex-M TM4C123.
Now the advantages of using Linux base micro controller architecture are
OS is free for the most part
Larger community of users
The industry is moving towards open source
Lot of free resources get up to speed
Disadvantage are
Learning curve is pretty steep
Expect to stumble and fall a few time
Below to two good resources to learn Beaglebone open source development
Beaglebone
Introduction to Beaglebone development by Derek Molloy of Dublin City University
HTH and good luck

Does Intel HD Family fit min graphics requirement for BB 10 Alpha Simulator

I am trying to run BB10 Simulator to port my web app. The simulator runs okay until the point where I launch any apps on the simulator, then the app crashes and never loads. The fact that the simulator runs makes me think I fit the minumum requirement.
But after looking at my graphics card, I am not sure I do. Hence, the app crashes on the sim. Does Intel HD Family graphics cards fit the min graphics requirment of NVIDIA GeForce 8800 GT or higher or an ATI Radeon HD 2600 or higher?
The BB10 simulator doesn't really use GPU acceleration and I've successfully used it on a MacMini (i5 HD3000) and a Lenovo Laptop (i3 HD3000).
The simulator run the real OS, so unlike Ripple, if you do something forbidden (writing somewhere you’re not supposed to, accessing a resource you didn’t request – PIM, BBM ID, Internet) then the QNX kernel kills you. (Double-check the bar-descriptor.xml)
I’ve never used webworks, but it may be a good idea to install the Native SDK: Momentics (The C++/Cascades IDE) can be frightening, but there is a “QNX Device” perspective that can open a browser to the {simulator|real phone} file system and access to logs. You will have more detail explaining why your application was killed.

DIY: Project remove VGA cable by sharing screen over wifi to TV

This is one of my coding projects. I'm fairly new to linux, so I need some pointers and thoughts from you guys, before I get started. I know there exists screen sharing software already, but I want to make my own! (=
Specifically, I want to clone my laptop screen to my TV over WLAN, via a linux box that is connected to a TV through a VGA cable:
Laptop streams it's screen
Linux box reads the stream
Linux box outputs the stream into the TV (through a VGA cable)
First of all, how do I record the screen and send the stream in real time in linux?
Secondly I must write a program that reads the stream being sent. The program must listen to some port, and collect the data being streamed from the laptop. Any thoughts?
Then I must output that data in real time to the TV. Do you how any ideas on how to solve this?
Thanks!
Edit: Regarding programming languages, I'm most comfortable with python.
Sharing your screen can be done via the various flavors of VNC (ie. RealVNC, TightVNC, UltraVNC, etc.). Most of them are Open Source, you might want to:
Stick with the VNC protocol for later compatibility
Take example of how the established solutions does for screen-hooking.
In Linux, the graphics are all processed by Xorg (new version of X Server), which was developed with networking embedded. This explains why you can ssh -X into a machine, execute a graphical interface on it and see it on your remote computer. I recommend you to read about hooks on Xorg to achieve your needs.
You need a client-server topology to achieve your needs. You are not talking about any programming language you forecast to use, though. Some languages may be harder than some to start with. Furthermore, this kind of code is already really well understood under every major programming language. You should try to at least use a framework that simplifies your networking portion of the project.
Sharing a screen on the TV can be done by your video card driver in Linux. Just check on your Desktop Environment (KDE and Gnome offers video configuration panels, for example) or in your video card configuration (nVidia and ATI Linux drivers offers multiple screen support)
It seems to me like you're trying to reinvent the wheel and are not too sure about how to begin. I recommend you to begin simple with one of the already proven VNC software and see how it goes from there. If a feature is missing, you've got the source code of the server and the client, so you can continue development of these projects. Once you've got your setup working, start thinking about replacing a single piece of the puzzle by your own code, and see how it goes.
Do not expect good (full HD, for instance) video quality on your TV without some very capable CPU/GPU and a 802.11n wireless network empty of users and be ready to accept some lag for the codecs to kick in.
You should try to take as small steps as possible. If I were taking up such a project, my first step would be to try to implement a solution using standard unix tools (e.g. netcat or socat for the network part, mplayer or vlc for the playback and maybe ffmpeg for the capture)? Then, replace each component with custom-written ones if needed.

Embedded Linux and device driver development

I plan to learn embedded linux and writing linux device drivers.
I need a dev board where I can,
Build and boot it with a linux distribution.
Write drivers for peripherals in the board.
(In future) Possible port Android to it
Can you suggest a dev kit to help me with this? Cost is not a bar - I am already familiar with linux at user space, I am willingly to spend to get better at the other side.
Thanks
James
How about a BeagleBoard (TI OMAP)? The Beagleboard has an active community and a lot of example projects, including an Android porting project. They're a few versions of Android behind the present day, but that should provide a starting point.
There is a new 25$ and 35$ option called Raspberry PI.
check this http://elinux.org/Android_on_OMAP
Google's Android on TI's ARM based OMAP SoCs / 2.6.23 Linux kernel
I think Armadeus project is for you. It is an open source project, that started in France and that is now expanding. The community is great and the number of peripherals is growing fast. Of course it is based on Linux.
A small company is building the boards. They are based on ARM9 and now ARM11. In the boards you also have a Xilinx FPGA, that open the doors for exciting experiments.
Hope this helps.
JCLL
Some cheap mini2440 linux board sounds like a good start. It can also run Android.
maybe you can have a Virtual Development Board, that is interesting.
Check also the OK6410 at http://www.arm9board.net, it is provided with Linux - 2.6.28 (2.6.36 in a quit near future) with all peripheral drivers and a basic Android system. You'll find it interesting and quit useful.

Resources