Quantcast
Channel:
Viewing all 44 articles
Browse latest View live

Seagate Central NAS – Enable USB Over DLNA

$
0
0

Problem: When connecting a USB device to the Seagate Central the NAS will happily serve the contents as a standard SAMBA share, but when trying to stream media via DLNA only items located on the internal hard drive are available.

Solution: Gain root access to the Seagate Central to enable advanced Twonky DLNA server configuration and to remap USB mount points for DLNA accessibility.

Unlock the features that Seagate should have enabled from the factory!

Disclaimer: Although fairly detailed in its explanation, this guide assumes some level of proficiency with computers (including Linux) and networking (SAMBA and SSH specifically) as well as a degree of common sense. There are inherent risks in gaining root access to the Seagate Central as well as flashing custom firmware to any device. While this method has been tested to work, safe and expected results can not be guaranteed.

Firstly, an SSH client such as PuTTY is needed in order to run terminal commands on the NAS. Simply install PuTTY and start a new SSH connection using the IP address of the NAS.

Secondly, become familiar with the content of the three links below. Advanced users who already have root access and know how to configure Twonky can either skim or skip this extended reading. However, most users following this guide will need to follow these procedures step-by-step.

http://seagatecentralenhancementclub.blogspot.com.au/2015/08/revert-to-previous-firmware-on-seagate.html
http://seagatecentralenhancementclub.blogspot.com/2015/11/root-su-recovery-for-seagate-central.html
http://seagatetwnky.blogspot.com/

Thirdly, although strictly unrelated to this guide, it’s worth mentioning that once root access is obtained, it is possible to activate a boost in transfer speed by issuing the following commands via an SSH terminal:
su root
[enter root password]
ifconfig eth0 mtu 9000

This enables jumbo frames and will likely result in a significant throughput increase if the NAS is connected to a properly configured gigabit network. A common complaint about the Seagate Central is its apparent 10 MB/s limitation, but it is actually capable of outperforming USB 2.0 with transfer speeds of 25+ MB/s.

Once the Seagate Central has been “upgraded” with root access and a configurable Twonky server, the issue of USB over DLNA can finally be addressed.

When connecting a USB drive to the NAS, it will generally show up as an SMB (Windows Networking) share called “usb1-1shareX” with ‘X’ being a number (or occasionally another permutation “usb1.Y-1shareX” where ‘Y’ is 2, 3, etc.) Unfortunately, while the contents can be accessed through File Explorer or other means, the DLNA server (Twonky) will not automatically look for those contents and–more detrimentally–USB drives cannot be manually shared through the Twonky configuration interface. By default, only the “/Public” folder is available through DLNA, and even with advanced Twonky configuration only subfolders within the “/Data” directory can be added manually. Bypassing this factory limitation is possible and the method to do so is explained by the remainder of this guide.

By opening an SSH session with the Seagate Central, it can be discovered that the USB drive contents are located within “/shares” (example: /shares/usb1-1share1) while they need to be in “/Data” in order to be DLNA accessible. The “/Data” folder is also where the “/Public” folder is stored, along with any user folders–including, at minimum, the admin account which is created during the initial setup.

Clearly the USB contents cannot just be copied to the “/Data” folder as that would defeat the purpose of using an external drive, so the best practice is to simply change the Twonky DLNA content base directory by entering “http://xxx.xxx.xxx.xxx:9000/rpc/set_option?contentbase=/shares” (substituting the NAS IP, of course) [ex: 192.168.1.12] in a web browser. This changes the DNLA root directory from “/Data” to “/shares”, so now Twonky can be manually configured to scan “/shares/Public” as well as any desired USB mount points such as “/shares/usb1-1share2” and so forth. The “/shares” directory as a whole could be DNLA scanned but it may contain subfolders or USB drives that would be undesirable to share. Cuing Twonky to automatically DLNA share any subfolder within “/shares” would include both “/Public” and every mounted USB drive, even as they are dynamically changed. Beneficially, this would eliminate manually sharing each USB mount name, although with the possibly adverse side effect of not being able to omit select USB drives from being DLNA shared. Manually adding each USB subfolder to Twonky’s share list as the need arises is recommended, but all likely USB directory name permutations can simply be added to the list beforehand.

In a web browser, go to “http://xxx.xxx.xxx.xxx:9000/” (again, substituting the NAS IP) and then select the Sharing tab. Click the “Add a New Folder” button, “Browse” button, and select the “usb1-1share1” (or the appropriate USB share) folder. Now select the already configured “/Public” share and browse to “/shares/Public” to remap that directory. Save the changes.

It will take a few minutes for Twonky to scan all the content again, but it should automatically index everything properly.

Addendum

There is second approach that can be used, albeit comparatively impractical. It is included below for the sake of academics and to prove there are multiple ways to skin Seagate’s overly restrictive cat.

Linux’s mount command is another means to sidestep this issue, as the bind argument can function much like a symbolic link, alias, or shortcut would, and anything accessing the mount point will thereby see the root directory of the USB drive instead.

Note: Remember that Linux is a case-sensitive operating system when entering these commands!

1) Create a new directory in “/Data” called “USB”:
cd /Data
sudo mkdir USB

2) Bind mount the old USB drive folder to the newly created “/Data/USB” folder (where X is the number assigned to the USB drive):
sudo mount --bind /shares/usb1-1shareX /Data/USB

3) Configure Twonky to share the newly created “USB” folder.

4) Bind mounting will not survive a NAS reboot, unless it is scripted be persistent. It would be a reasonable guess to edit /etc/rc.local or /etc/fstab, but this method will not work in MontaVista Linux, so another scheme is utilized which automatically calls a user-created script:
cd /etc/rc5.d/
touch S99usbdlna
sudo nano /etc/rc5.d/S99usbdlna

Add the following lines into nano:
mount --bind /shares/usb1-1share1 /Data/USB
mount --bind /shares/usb1-1share2 /Data/USB
mount --bind /shares/usb1.2-1share1 /Data/USB
mount --bind /shares/usb1.2-1share2 /Data/USB
mount --bind /shares/usb1.3-1share1 /Data/USB
mount --bind /shares/usb1.3-1share2 /Data/USB
mount --bind /shares/usb1.4-1share1 /Data/USB
mount --bind /shares/usb1.4-1share2 /Data/USB
exit 0

Hit Control-X then ‘Y’ to commit changes.

Note: This is a bit of a quick-and-dirty kludge as it tries to mount multiple USB drive names to the same directory, anticipating only 1 or 0 will be found. There is surely a more elegant way of doing it, if someone clever wants to suggest a modified script.

Additional Note: Seagate Central will work with a USB hub, so it is entirely possible to have more than one drive connected at once. In order for this to work with DLNA, more than one bind mount must be done so USB2, USB3, USB4, etc. would also need to be created, bind mounted, and DLNA shared in a similar fashion. The directory names and number of directories can be tailored to taste depending on the individual setup, or a more advanced and adaptable script could be written to automate the procedure.

As an example of the above concept:
cd /Data
sudo mkdir USB2
sudo mkdir USB3
sudo mkdir USB4
sudo mkdir USB5
sudo mkdir USB6
sudo mkdir USB7
sudo mkdir USB8
sudo nano /etc/rc5.d/S99usbdlna

Next, alter the S99usbdlna script to look like the following (simply change all references to the USB folder to USB-USB8 incrementally):
mount --bind /shares/usb1-1share1 /Data/USB
mount --bind /shares/usb1-1share2 /Data/USB2
mount --bind /shares/usb1.2-1share1 /Data/USB3
mount --bind /shares/usb1.2-1share2 /Data/USB4
mount --bind /shares/usb1.3-1share1 /Data/USB5
mount --bind /shares/usb1.3-1share2 /Data/USB6
mount --bind /shares/usb1.4-1share1 /Data/USB7
mount --bind /shares/usb1.4-1share2 /Data/USB8
exit 0

Hit Control-X then ‘Y’ to commit changes.

If additional bind mounts are created in such a way, remember to also add USB2-USB8 as folder shares through Twonky’s configuration interface.

Lastly–in either case–the script needs to be made executable, so change its permissions:
sudo chmod 755 /etc/rc5.d/S99usbdlna

Now the bind mount will attempt to run automatically during every boot. However, this method does not work well with on-the-fly disk swapping as the mount is maintained even when the drive is ejected. Although it should be generally harmless, installing the script is only recommended when piggybacking a USB drive onto the NAS in a semi-permanent fashion as any USB disk swapping may or may not require a full reboot to be properly recognized through DLNA. Also, the script has not been extensively tested, so unforeseen consequences may arise.

Extra Bonus Trick

It would be logical to think that connecting a USB device to the Seagate Central would be a quicker, more efficient means of copying files to the NAS, but attempting to do so only results in the file being read from the USB drive, passed through the network, and finally being written back to the internal storage of the NAS rather than reading/writing directly between the USB/internal storage. This scheme not only ties up the network, but the computer used to initiate the file transfer. By using SSH, this can be done the intended way. Here’s an example of copying all the MKV files from a USB drive into a DLNA video share folder:

cd /shares/usb1-1share2
cp *.mkv /Data/Public/Videos


Ensoniq Mirage HxC (HFE) Library

$
0
0

Any owner of an Ensoniq Mirage with an HxC / HxC Gotek floppy drive emulator will be looking for content to add. Here are a whole bunch of already converted, ready-to-use disk images. Included in this archive are multiple OS, format, user, and stock images. This is an extensive collection and includes the usual ‘all of The Internet’ sets such as DaDash, Hologram, MUG, Mirage-Net, et al. but also many more exclusive items not commonly available.

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.


 

E-mu EIIIX / ESI Series Factory Library

$
0
0

The ESI-32, ESI-2000, and ESI-4000 were essentially a tweaked re-release of the Emulator III and can use all the same libraries. It should be noted that the later generation EIV series CDs cannot be used in this early to mid ’90s family of samplers.

Vol. 1 – Emulator Standards
Vol. 2 – More Emulator Standards
Vol. 3 – Orchestral
Vol. 4 – Sound FX
Vol. 5 – World Instruments
Vol. 6 – World Percussion/Ensembles
Vol. 7 – E-mu Classics
Vol. 8 – Vintage
Vol. 9 – Psychic Horns
Vol. 10 – Elements of Sound 1MB
Vol. 11 – Elements of Sound 2MB
Vol. 12 – ESI-32 150MB Production Soundset 1 & 2 (2 CD)
Vol. 13 – Dance 2000
Vol. 14 – General Midi Collection
Vol. 15 – Bass Collection
Vol. 16 – Twenty Six Studio Drum Kits and Percussion
Vol. 17 – Heavy Guitars

E-MU Formula 4000 Series Vol. 1 – Hip Hop Nation
E-MU Formula 4000 Series Vol. 2 – Techno Trance
E-MU Formula 4000 Series Vol. 3 – Analog Odyssey
E-MU Formula 4000 Series Vol. 4 – Earth Tones
E-MU Formula 4000 Series Vol. 5 – Protozoa

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.


 

E-mu EIV Series Factory Library

$
0
0

CDs for the Emulator IV sampler and compatibles (E4K, E4X, E4XT Ultra) from the late ’90s. Also see the E-Mu EIII/ESI series library.

Producer Series Vol. 1 – Studio Essentials
Producer Series Vol. 2 – More Studio Essentials
Producer Series Vol. 3 – Hollywood Sound Effects
Producer Series Vol. 4 – Denny Jaeger Private Collection
Producer Series Vol. 5 – 3-D Audio Collection
Producer Series Vol. 6 – Analogia Project (2 CD)
Producer Series Vol. 7 – Old World Instruments (2 CD)
Producer Series Vol. 8 – Platinum Phatt (2 CD)

Note: These particular titles are not backward compatible with the earlier EIIIX based samplers from the early to mid ’90s.

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.

E-mu ESI-4000 Turbo Multiple Output Configuration Guide

$
0
0

Even though E-mu’s operation manual for the ESI series does technically state how multiple outputs can be used, it’s not clearly explained and is a bit ambiguous on some points. The goal of this primer is to bring the use of multiple discrete outputs into focus, especially within the context of using Multi Mode to assign individual patches/instruments to their own separate outputs.

While most of these concepts apply to the base model, this guide is specifically meant for the ESI-4000 with the Turbo expansion card, as this ESI 4K Turbo has highest number of outputs.

CONNECTING PHYSICAL OUTPUTS

The layout of the output jacks isn’t entirely clear at first glance for three reasons:

1) E-mu has mixed mono and stereo outputs together in one machine (Turbo model only).

2) The Turbo expansion depends upon using TRS “insert” style (y-splitter) cables in almost all scenarios.

3) The cabling for Submix 1 (the only submix output on non-upgraded models) is treated differently than Submix 2 and 3.

In the manual, E-mu implies that Submix 1 will be used with an “insert” cable and that a signal will be returned to the ESI. This is not necessary nor desirable when using a multiple output configuration. Instead, a standard mono 1/4″ instrument cable should be connected to both (left/right) Submix 1 outputs in exactly the same way as the Main Outputs are connected — ignore the concept of an FX return path and treat the Submix L/R jacks as traditional output only jacks instead of a send/return or output/input.

Conversely, Sub 2 and 3 each carry a stereo signal and do require the use of a y-splitter cable for each submix. This will convert each stereo output to a left/right (or dual mono) output, which can then be connected in the same manner as the Main Outputs and Submix 1.

Here is a breakdown of the outputs:

Main Output L (mono) \ stereo
Main Output R (mono) / pair

Sub 1 L (mono) \ stereo [plus a left mono input which should be ignored in this case]
Sub 1 R (mono) / pair [plus a right mono input which should be ignored in this case]

Sub 2 L/R (stereo pair)

Sub 3 L/R (stereo pair)

So, while these are generally treated as 4 stereo busses, 8 separate mono signals can be sent out of the ESI-4000 Turbo if configured correctly.

SPDIF and FX can also be utilized but are not separate busses and cannot be used to expand the number of discrete outputs. In the case of a multiple output setup, SPDIF or FX would be used as an alternative to the analog Main Output bus. This is an advanced configuration which is explained later in the SPDIF/FX section.

SETTINGS CONFIGURATION

MASTER/SPECIAL/OUTPUT FORMAT —
Main Output Format: analog

MASTER/MIDI/MULTIMODE ENABLE —
Boot in Multi: yes
Use Bank State: no

MASTER/MIDI/MIDI MIX —
Change the bottom lines from ‘zzzz zzzz zzzz zzzz’ to ‘M123 zzzz zzzz zzzz’ (for 4 stereo busses) or ‘MM11 2233 zzzz zzzz’ (for 8 mono outputs).

This is assuming MIDI channels 1-4 for stereo output, or MIDI channels 1-8 for mono output. Different MIDI channels and stereo/mono combinations can be configured, but–for the sake of simplicity–this guide will assume either all stereo or mono instruments and MIDI channels 1-4 or 1-8.

Ignore the volume/panning settings in the MIDI MIX menu as the external sequencer will automatically override any panning and volume settings.

PATCH/INSTRUMENT ASSIGNMENT

First, load a bank with all the needed patches (LOAD, select bank, ENTER). After the bank is loaded, make sure the ESI is in Multi Mode. Next, use the jog wheel to select a patch for MIDI Channel 1. Cursor Right to go to the next MIDI channel and again use the jog wheel to select a patch for MIDI Channel 2. Repeat the process for channels 3 and 4 (stereo) or 3-8 (mono).

SEQUENCER SETUP

Create either 4 MIDI tracks (one per stereo bus) or 8 MIDI tracks (one per mono output). Assign each MIDI track its own unique channel between 1-4 (stereo) and 1-8 (mono), the channel of which should correspond to whatever patch was assigned to each channel in the ESI’s Multi Mode configuration.

For example, if a violin patch was assigned to MIDI Channel 1 in Multi Mode then the sequencer MIDI track which contains the notes for the violin should be assigned to MIDI channel 1.

For mono operation, change the panning to be hard left for every MIDI track with an odd-numbered MIDI channel, and hard right for every even-numbered MIDI channel. While this seemingly can be set in the MIDI MIX menu, the sequencer will automatically override any panning and volume settings.

In other words, each MIDI track should alternate panning hard left/right, such as channel 1 fully left and channel 2 fully right. This will cause the instrument assigned to MIDI channel 1 to appear at Main L and channel 2 to appear at Main R, and channel 3 to appear at Sub1 L and channel 4 to appear at Sub1 R, and so on.

Note: The panning for MIDI is needed for proper instrument separation from the ESI outputs, however, once the signal has entered a mixer or audio interface then the audio can be panned anywhere within the stereo field. Do not confuse controlling the ESI’s panning via MIDI with later controlling the pan position of the actual audio.

The only reason to use stereo mode operation on the ESI is when a patch has actual stereo information (different audio on the left/right channels). Using stereo bussing on instruments which are simply panned mono is a waste of otherwise usable outputs. In other words, don’t use MIDI panning and stereo bussing simply to place a mono instrument somewhere in the stereo field!

Also, when using stereo instruments with stereo bussing then MIDI panning should not be moved from the center position, unless intentionally adjusting the stereo balance.

SPDIF/FX

As the Submix busses and Main Outputs are always dry (lacking effects), the effects processor in the ESI-4000 Turbo cannot be utilized unless either the SPDIF or FX output connectors are used in lieu of Main Output L/R. Also, the SPDIF is a digital output and may be preferable to the analog main outputs in certain situations and setups, regardless of effects usage.

If SPDIF is used, the ESI will have 1 wet/dry digital bus and 3 dry analog busses. Likewise, if FX is used then the ESI will have 1 wet/dry analog bus and 3 dry analog busses. SPDIF, of course, requires an audio interface or mixer with digital input, and the FX jack requires a y-splitter of the same type as Sub 2 and Sub 3, so the cabling requirements are slightly different.

Ordinarily, using the submix outputs will separate each instrument appropriately by removing the corresponding signals from the main outputs, so everything works as expected when using Main + Sub 1,2 and 3 in combination. However, the problem with using SPDIF/FX is that those outputs are not, by default, a mirror of only the main output, but instead the entire effects processor, such as that all three submixes will bleed into the SPDIF/FX outputs. As having mixed signals defeats the purpose of having multiple using multiple outputs, this needs to be adjusted.

To configure SPDIF/FX to be a mirror of the main output bus instead of the entire effects processor output:

MASTER/EFFECTS/EFFECTS SETUP —
Effects: Bypassed
Multimode Control: master settings

Alternately, SPDIF/FX can be used as a wet version of the main output bus. Either Effects A, Effects B, or A & B can be applied to the main output signal and routed to SPDIF/FX.

To configure SPDIF/FX as a wet main output bus:

MASTER/EFFECTS/EFFECTS SETUP —
Effects: Enabled
Multimode Control: master settings

MASTER/EFFECTS/MASTER EFFECT A —
(cursor right twice)
Sends:
Main = 0-100% (set to taste)
Sub1 = 0%
Sub2 = 0%
Sub3 = 0%

MASTER/EFFECTS/MASTER EFFECT B —
(cursor right twice)
Sends:
Main = 0-100% (set to taste)
Sub1 = 0%
Sub2 = 0%
Sub3 = 0%

The important concept when using the SPDIF/FX outputs is that the effects processor either needs to be disabled entirely or effectively disabled for Sub1, 2, and 3 by having all submix FX sends set to 0%. Also, since this type of multiple output setup make it impossible to use (in any meaningful way) the ESI’s internal effects on the submix busses, any patches needing internal effects should be assigned to the main output exclusively.

FINAL NOTES

While Multi Mode can be automatically enabled at boot, and all other settings are persistent, the MIDI MIX settings have to be configured each time the ESI boots.

Also, just as the volume/panning settings in MIDI MIX are pointless to set in the ESI since they are ultimately controlled via MIDI, so too are the volume and panning settings in Multi Mode. Volume and panning in Multi Mode and MIDI MIX are tied together and will be overruled by external MIDI sequencing, so should only be used as a point of reference and not manually changed, except as an exercise in frustration.

If this behavior is irksome, it is possible to disable sequencer control of volume and panning through MASTER/MIDI/MIDI VOLUME & PAN.

E-mu Emulator X3 Plus Library

$
0
0

E-mu EOS on any Windows PC

As E-MU ended production of their hardware samplers in 2003, they were getting ready to release the final Emulator in 2004 – Emulator X. This was a software-only Emulator, and was backwards compatible with the hardware Emulator IV series samplers as it could both read and write .E4B files.

Important Note: Don’t be fooled by people selling Emulator X3 online, they have no agreement with Creative/E-MU and you’re simply wasting your money with them.

The first two versions (Emulator X in 2004 and Emulator X2 in 2006) required either an E-MU audio/MIDI interface to be installed as part of the copy protection scheme, but the third (Emulator X3 in 2009) only used an activation server. As of the publication date of this article (12/26/2017), the activation server is surprisingly still up and responding to requests so we’ve archived an activated version of the software using the open-source VirtualBox virtualization product by Oracle.

For help on how to use our VM image, please refer to this article on importing VDI files into VirtualBox.

There are three good reasons to incorporate Emulator X into a “modern vintage” setup:

– As a superb graphical editor for Emulator IV banks and presets
– To convert other sample formats to Emulator IV .E4B
– As an amazingly powerful virtual instrument

We’ll post detailed articles soon describing each of these.

Here’s what the final version of the E-MU web site had to say about Emulator X3:

E-MU’s Emulator® X3 is the world’s most powerful and complete software sampling tool in the world, featuring E-MU’s new Xstream™ streaming sound engine with a up to 192kHz sampling and playback, 32-bit and 64-bit native applications for both Windows XP and Windows Vista, an arsenal of automated sampling/beat analysis/editing tools and almost unlimited sound manipulation that builds on E-MU’s 40 years of synthesis experience.

Emulator X3 features:

Xstream™ 24-bit/192kHz Streaming Engine, featuring E-MU’s patented pitch interpolation and precision 32-bit floating point processing for unmatched sound quality
32-bit and native 64-bit applications included (32-bit: Windows XP and Vista; 64-bit: Windows x64 and Vista)
Optimized for Multi-core and Multi-Threaded processors to intelligently balance the processing load across all available resources for exceptional performance
Automated sampling, pitch detection and preset creation with integrated waveform editor
Powerful synthesis architecture with over 50 Z-Plane filters and 100 tempo-based parameters per preset
Standalone (64 MIDI channels) or VSTi operation (16 MIDI channels per instantiation)
Sound Engine supports RAM and streaming playback
Integrated effects processors
Improved sound format support, including EOS, EIII, GigaSampler, MP3, REX2, .AIFF, SoundFont 2.1, .WAV, File Converter Application, and more
Ships with over 3GB of sounds, including the complete Proteus 2000 soundset, a stunning 1.5GB Grand Piano, 24-bit drums and grooves, Xtreme Lead X, and more – additional soundsets available
Xplode™ beat slicer with MIDI and Tempo Map Export
Comprehensive DSP Tools including Transform Multiply and Xtractor™

E-MU Sound Central Library

Platinum 88
Modern Symphonic Orchestra
Xtreme Lead X
Techno Synth Construction Yard
Protean Drums X
Beat Garden X
MoPhatt X
Planet Earth X
Virtuoso X
Vintage Pro X Vol 1
Vintage Pro X Vol 2
Vintage Pro X Vol 3
Street Kits
Beat Shop Two

Bonus: E-mu X-MIDI 2×2 Drivers & Manual CD

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.

Inside the Akai MPD16 USB/MIDI Pad

$
0
0

This article is currently under construction and more information will likely be added, time permitting.

Support Materials

MPD16 Utility Software Manual
Utility Software, Drivers, and Manuals CD (came originally bundled with Akai MPD16)
Scan of Akai MPD16 CD label

Note: This original CD has manuals in multiple languages as well as the initial v1.0 drivers.

Pad Sensitivity Physical Modification Hack

This very simple hack involves little more than disassembling the MPD16 and putting thin layers of tape on the underside of each of the rubber pads so that they contact the pressure sensing sheet properly.

Factory Reset

Control Change, MIDI Channel, and key/note number assignments can be reset by holding FULL LEVEL and BANK while the Akai MPD16 is unplugged from both power and USB and continuing to hold them while connecting the MPD16 to either USB or DC 9V. Once the FULL LEVEL LED flashes for three seconds, the reset is complete.

Note: Pad sensitivity can never be set, reset, or otherwise cleared or adjusted without using the configuration software via USB connector. In other words, if a driver does not exist for your computer operating system then pad sensitivity will remain at its previous settings and can never be altered.

Integrated Circuit (IC) Information

Microchip 24LC01B, serial EEPROM — This can be read/written via I2C protocol, and likely stores pad configuration data such as key/note number, pad sensitivity, Control Change parameter, and MIDI Channel. These settings are retained in between power on/off events.

Unstable Drivers Fix (Blue Screen of Death, BSOD) Under Windows XP

It’s well-known how unstable the Akai MPD16 drivers can be under Windows XP. If the newest (v2.0) MPD16 drivers do not solve the crashing issue on a PC with Hyper-Threading support then go into BIOS setup and disable Hyper-Threading.

Driver Support (or lack thereof)

As Akai driver support is terrible for legacy products, there is no software support for anything past Windows XP. While the MPD16 can be powered via USB (or 9VDC) and the traditional MIDI OUT port can be connected to any MIDI device, pad sensitivity is inaccessible on a modern system. While pad assignment is possible from the MPD16 itself, this is time consuming and difficult without the bundled editor application which, again, cannot be used without proper drivers. Lastly, using the MPD16 over a USB virtual MIDI port is the only option on computers without a hardware MIDI interface and ties up otherwise available ports even on those that do have physical MIDI jacks.

There is no reason for this other than laziness and/or planned obsolescence on the part of Akai.

Note: Generic drivers are not a solution for this as the MPD16 is not class-compliant, so universal audio/MIDI drivers (such as Korg) will not work even if they are hacked to recognize the MPD16 hardware/vendor/product IDs.

In order to use the MPD16 via USB on a Windows Vista or later system, custom drivers will have to be created. Therefore…

Protocol Reverse Engineering

While a Windows XP virtual machine hosted through Linux is probably what most self-respecting technophiles would use to gather this information, SnoopyPro on a native Windows XP install works very well. In fact, SnoopyPro worked where other packages–including USBTracer, Wireshark+USBPcap, USBLyzer, and HHD USB Device Monitoring Studio–all failed.

Basic USB Info:

Hardware ID: Vendor 0x09e8, Product 0x0062
“AKAIpro MPD16 USB/MIDI PAD CONTROL UNIT”

Protocol Specs:

An output pipe in this context means host-to-device (computer –> MPD16) and an input pipe means device-to-host (MPD16 –> computer), so this is conceptually reversed in the sense that the physical MPD16 MIDI OUT jack would be visualized as an output while the USB pipe carrying the same note/velocity data is technically called an input (as viewed from the perspective of the host computer).

pipe 0x0 [endpoint 0] (control in/out, pack size 8) = All MIDI devices must have this, so there’s nothing of particular note here. The MPD16 identifies itself for proper configuration with the host over this connection.

pipe 0x1 [endpoint 1] (bulk output, packet size 64) = Config In (to MPD16 via USB) — configures pads, etc. via SysEx, probably

pipe 0x81 [endpoint 2] (bulk input, packet size 64) = Config Out (from MPD16 via USB) — sends current pad settings to control software via SysEx Events, probably

Communication is in the form of $1x (in other words, a hex value) where x is the length of the message. All observed strings are 9 bytes in length (therefore start with $19) and have SysEx Begin ($F0), Akai MIDI Vendor ID ($47), Model ID ($62, same as USB PID), an apparent constant of unknown significance ($60), four data bytes, and finally SysEx End ($F7).

The following is the beginning of an initialization routine between the MPD16 and its Utility software:

19 F0 47 62 60 10 01 7E 0F F7
19 F0 47 62 60 10 04 7F 13 F7
19 F0 47 62 60 10 04 00 14 F7
19 F0 47 62 60 15 01 00 16 F7

Note: It is currently unknown what these strings do with 100% certainty, but this is how the Akai MPD16 and the Editor Utility software talk to each other. It’s unclear why these are MIDI SysEx when the MPD16 has neither virtual, nor physical, MIDI IN ports.

The first bytes of the pseudo-SysEx strings should always remain the same (19 F0 47 62 60) and are followed with a “command” byte, two data bytes, a checksum of the previous three bytes, and always SysEx End ($F7).

The command bytes depend upon what setting is being changed or reported:

$10 – Selection (host sent)
$11 – Note Assignment (host sent)
$12 – Pad Sensitivity Assignment (host sent)
$13 – Control Change Assignment (host sent)
$14 – MIDI Channel Assignment (host sent)
$15 – Query (host sent; asks which note or sensitivity value is assigned to a given pad, plus others)
$20 – Note Reply (MPD16 sent; returns a pad’s note assignment in response to type $01 pad queries by host)
$21 – Sensitivity Reply (MPD16 sent; returns a pad’s sensitivity assignment in response to type $02 pad queries by host)
$22 – Reply to type $03 query, unknown (MPD16 sent; returns response to type $03 host query, Control Change maybe)
$23 – Reply to type $05 query, unknown (MPD16 sent; returns response to type $05 host query, MIDI Channel maybe)

SELECTION

19 F0 47 62 60 cm st bn cs F7

cm = selection command, probably — a constant of $10
st = selection type, probably — a constant of $04 when dealing with banks
bn = bank number/ID, probably — either $00 for Bank A, or $7F for Bank B, perhaps
cs = checksum which is the sum of previous three bytes, however this does not hold true for Bank B because SysEx values cannot exceed 127, so the checksum rolls over and becomes $13

Note: Selection commands aren’t necessarily bank related, so the following byte is not always $04. Bank A/B is an example of a specific type, and $01 is seemingly another type of unknown significance.

NOTE ASSIGNMENT

19 F0 47 62 60 cm pn nn cs F7

cm = note assignment command — a constant of $11
pn = pad number ($00~1F) — the pad number is offset by one (Pad 1 = $00, Pad 2 = $01 .. Pad 17 = $10, Pad 32 = $1F)

Note: Pads in Bank A are $00~0F, Bank B are $10~1F

nn = note number — the number in hex equating to a particular note at a given octave (A#-4, E-3, D-2, C#-4, etc.)
cs = a simple addition of previous three bytes, probably serving as a checksum

PAD SENSITIVITY ASSIGNMENT

19 F0 47 62 60 cm pn ss cs F7

cm = sensitivity command — a constant of $12
pn = pad number ($00~0F) — the pad number is offset by one (Pad 1 = $00, Pad 2 = $01 .. Pad 15 = $0E, Pad 16 = $0F)
ss = sensitivity ($00~10) — $00 is -8, $08 is 0, and $10 is +8, etc.
cs = a simple addition of previous three bytes, probably serving as a checksum

Note: Sensitivity has (somewhat oddly) 17 values, as it is not 00~0F as might be expected; -8 to +8 also includes 0, so that zero is truly a neutral/center value.

CONTROL CHANGE ASSIGNMENT

19 F0 47 62 60 cm 00 cc cs F7

cm = control change command — a constant of $13, followed by a null $00 as the first data byte is not needed
cc = control change number (range is 0~119 in decimal, but expressed as hex)
cs = checksum — as one byte is a null, really just cm+cc

MIDI CHANNEL ASSIGNMENT

19 F0 47 62 60 cm 00 mc cs F7

cm = MIDI channel command — a constant of $14, followed by a null $00 as the first data byte is not needed
mc = MIDI channel number — the MIDI channel is offset by one (Ch. 1 = $00, Ch. 2 = $01 .. Ch. 16 = $0F)
cs = checksum — as one byte is a null, really just cm+mc

pipe 0x2 [endpoint 3] (bulk output, packet size 64) = MIDI In (via USB) — N/A, probably (seems pointless for the MPD16 to ever receive standard MIDI events as there’s no MIDI THRU jack)

pipe 0x82 [endpoint 4] (bulk input, packet size 64) = MIDI Out from MPD16 — Note On, Velocity, Control Change (Slider) Events, and Key Aftertouch

pipe 0x82 sends out standard MIDI messages which are preceded by one byte which is in the form of $2x (in other words, a hex value) where x is the length of the message. $21 is a standard MIDI event with a one byte length, $23 is a standard MIDI event with a three byte length, etc.

As an example, the MPD16 constantly sends out an Active Sensing flag to declare to other MIDI devices that it is still alive. The actual MIDI event code for this is $FE. Since this is one byte being sent over pipe 0x82, it is preceded with $21; the total message being “$21 $FE” which is broadcast at regular intervals.

If the slider is used, “$23 $Bx $07 $yy” where $Bx is the MIDI Control Change byte (x is the MIDI channel the MPD16 is currently transmitting on), $07 signifies a Channel Volume event, and $yy is the current channel volume (a decimal value between 0-127, but expressed in hex).

If a pad is hit, “$23 $9x $yy $zz” where $9x is MIDI Note On (x is the MIDI channel the MPD16 is currently transmitting on), $yy is the Note/Key Number, and $zz is Note On Velocity

Note On ($9x, x = MIDI channel subtract 1)
Note/Key Number (0-127, but expressed in hex)
Note On Velocity (1-127, but expressed in hex)

QUERY

19 F0 47 62 60 cm qt pn cs F7

cm = pad query command — a constant of $15
qt = note query when type $01, sensitivity query when type $02, unknown $03, unknown $05
pn = pad number ($00~1F) — the pad number is offset by one (Pad 1 = $00, Pad 2 = $01 .. Pad 17 = $10, Pad 32 = $1F)

Note: A sensitivity query can only be $00~0F as there are 32 virtual pads, but only 16 physical pads.

cs = checksum of previous three bytes

NOTE REPLY

19 F0 47 62 60 cm pn nn cs F7

cm = note reply command — a constant of $20
pn = pad number ($00~1F) — the pad number is offset by one (Pad 1 = $00, Pad 2 = $01 .. Pad 17 = $10, Pad 32 = $1F)
nn = note number — the number in hex equating to a particular note at a given octave (A#-4, E-3, D-2, C#-4, etc.)
cs = checksum of previous three bytes

SENSITIVITY REPLY

19 F0 47 62 60 cm pn nn cs F7

cm = sensitivity reply command — a constant of $21
pn = pad number ($00~0F) — the pad number is offset by one (Pad 1 = $00, Pad 2 = $01 .. Pad 15 = $0E, Pad 16 = $0F)
sn = sensitivity number ($00~10) -8 to +8, with 0 being the center value — 17 values
cs = checksum of previous three bytes

Akai S-Series CD-ROM Sound Library

$
0
0

Akai S-Series CD-ROM Sound Library

Volume 1 XL – Complete S3000 & CD3000 Library

A. Piano/Keyboard/Mallet
B. Strings
C. Brass/Wind
D. Drum/Rhythm
E. Percussion
F. Bass/Guitar
G. Voice/Organ
H. Synthesizer
I. Work Station
J. Sample Wave Mixing
K. Sample Wave Mixing
L. Sound Effects
M. Ethnic/Break Beats/Orchestra/Others

Volume 2 – Complete S1000/S110 Library

A. Piano
B. Strings
C. Brass/Wind
D. Drum
E. Percussion
F. Bass/Guitar
G. Voice
H. Keyboard
I. Synthesizer
J. Others
K. Work Station
L. Sample Wave Mixing
M. Sound Effects

Volume 3 – Drum Kit Collection

A. Kick
B. Snare
C. Tom
D. Hi-Hat
E. Crash Cymbal
F. Crash Cymbal
G. Ride Cymbal
H. Ride Cymbal
I. Snare
J. Tom
K. Drum Kit

Volume 4 – Rhythm Loop Collection

A. Dry Loop
B. Ambience Loop
C. Synth Loop
D. Effect Loop
E. Others Loop
F. Bonus Sounds

Volume 5 – Percussion Collection

A. Cuba
B. Cuba
C. Brazil
D. Africa
E. Other
F. Other
G. Ethnic
H. FX
I. Kit

Volume 6 – Sound Effects Collection

A. Daily Life
B. Tools
C. Human
D. Background
E. Synth FX
F. Transportation
G. Other Sounds 1
H. Other Sounds 2

Volume 7 – New Keyboard Collection (for S3000 XL)

A. Piano
B. Piano II
C. Strings
D. Guitar
E. Bass
F. Synthesizer
G. Voice
H. Mallet
I. Other

Volume 8 – General MIDI Sets

A. GM Set #1
B. GM Set #2
C. GM Set #3
D. GM Set #4
E. GM Set #5
F. Percussion / Sound Effects
G. Drum Kit

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.


 

Yamaha A-Series Factory Sound Library

$
0
0

A5000 / A4000 / A3000

Yamaha A-Series Libary

The Yamaha A5000 and A4000 came bundled with a set of 9 sample CD-ROMs and an additional data CD with editing utilities.

A5000/4000 Tools CD-ROM Contents

– XGWorks lite v3.0
– A5000/A4000 Editor
– Yamaha Wave Editor TWE v2.2
– Yamaha CBX Driver
– 98 tracks of CD audio filled with samples

Professional Sound Library

PSLCD-101 – Piano / Keyboards
PSLCD-102 – Guitar / Bass
PSLCD-103 – Brass-Wind Instruments
PSLCD-104 – String / Choir
PSLCD-105 – Real Drums
PSLCD-106 – World-Latin Instruments
PSLCD-201 – Syntraxx / Loops
PSLCD-202 – DJ-Producer Tool Kit
Standards CD-ROM (grand pianos, organs, brass, strings, woodwinds, guitars, drums, etc.)

A5000 – Guide to Accompanying Disks

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.


 

FileBot Legacy Build Archive

$
0
0

As of version 4.7.10, the media file renaming utility FileBot has moved exclusively to a pay model and is locked to the Microsoft Store — redistributable, portable, and standalone installers are no longer supported on the Windows platform. This proves especially problematic for those not wishing to install or use so-called “modern” apps (instead of classic desktop applications), and also for anyone willing to stay with the previously available 4.7.x builds. Even more irritating is that 4.7.8 or 4.7.9 will run perfectly on Windows 7/8 but have been coded specifically by the developer to intentionally fail on Windows 10.

Somewhat strangely, while its source code is still available at GitHub and can be manually compiled to generate a working binary, the legacy binaries are no longer available on the FileBot website. Additionally, while SourceForge still lists a FileBot project mirror, the links are simply dead. One can speculate this is because the source code has already been released to the public and cannot be revoked, but offering the binaries would detract from the new pay model, and the effort of compiling the binaries is used as an inconvenience factor for those wishing to utilize legacy versions of FileBot. In other words, all previous builds have been yanked and removed from as many servers as possible in order to (potentially) increase revenue streams.

Therefore, below is a mirror of the last two available FileBot 4.7.8 and FileBot 4.7.9 distributions along with a list of binary checksums for those wishing to validate that this archive has not been tampered with or the sake of academic curiosity.

Windows 10 users are advised to use FileBot 4.7.7 which is available as a 32-bit (x86) or 64-bit installer.

An alternative approach for Microsoft Windows users is to use this stub installer which fetches the last freely available version for whatever Windows platform from which it is launched.

SHA-256 checksums above; download links below (in progress)

bae8ec7ee51f3c11b8c190c14199c42a299d72755dd9e14763ca87189dd1d687
FileBot_4.7.9-darwin.tar.xz
2531bc67d3522b1db05870da2b72fff580ebfa5969655e75382ffe2c8dec6867
FileBot_4.7.9-portable.tar.xz
93b80a068f8a6226259e8165e743754b81c668f6d7fcb59e8a17839dea771790
FileBot_4.7.9_x64.msi
5d827eed2d0de7f43b8190782debd903b9affa47e8b4469e037416ebc869e15f
FileBot_4.7.9_x86.msi
82212564bb12a5314860f9b2caff542216c81526e1c973664c5fa269324155b6
filebot-4.7.9-noarch.spk
892723dcec8fe5385ec6665db9960e7c1a88e459a60525c02afb7f1195a50523
filebot_4.7.9_amd64.deb
d7aa3f8d9af9a784853cd935e9a0770d743156991c1d9538b3b5f25b2a20b11d
filebot_4.7.9_armhf.deb
93237b300f2270bdeb7a033139eb58bbd7069f6bba1a50e738056fe3b8d5f234
filebot_4.7.9_i386.deb

d58c699ecd47a6f9cec2226acf11a01bb57c07ac093eaaed31c5bc4cdda7c7b7
FileBot_4.7.8-darwin.tar.xz
8ccc11cb583f272825014958c32eabc95b1beb8f78ae73ec39cdc538667a29a2
FileBot_4.7.8-portable.tar.xz
e68316c28cfaf1cb3841e1d8ba7bb9b4e8f948f7073a4f49978399dfa3791281
FileBot_4.7.8_x64.msi
52fca8b3e3f3d2b8c51c7e5d1f7ef1b817b2fce48896212f8225d1863d658ac1
FileBot_4.7.8_x86.msi
f56cd8fe0eefd409a19a33df2e809eed6ffd1a6fb6e54f76915710d788b856ba
filebot-4.7.8-noarch.spk — CURRENTLY UNAVAILABLE
c64026327cdd8b1e5e5932cef39d35e80932d527ec5c1c69b689313f7882e7b7
filebot_4.7.8_amd64.deb
def4b1bdefefb705c15dd8b4e79ef453712c6001d8efebabf31a7f382eed28df
filebot_4.7.8_armhf.deb — CURRENTLY UNAVAILABLE
e3da2b9cae7551f7c89f81b99e717fbb73d09987b99a39f5d1f704c7b7d904da
filebot_4.7.8_i386.deb

Portable Versions

FileBot 4.7.8 x64 Portable
FileBot 4.7.8 x86 Portable

Kawai R50 & R100 Series ROMs

$
0
0

While all three of the factory ROMs for the Kawai R50, R50e, and R100 are available for download, it should be noted that some EPROM programmers struggle with writing them, so a special adapter or other considerations may be necessary for any given EPROM burner.

All three ROMs are interchangeable with each other, so an R50 can be loaded with the R50e sound set, and so forth.

ROM Sound Editing

Unlike drum machines with standard PCM data sound ROMs (Casio RZ-1, et al), Kawai uses an unusual encoding scheme which must be decoded in a very specific manner or else noise will result. FMJ Software – Awave Studio is known to be uniquely capable of opening Kawai ROMs as wave files.

ROM Building

R100BuilderFree_v0_20.zip (ROM-builder software)

Kaai R50 and R100 series ROMs

EPROM Technical Information

The 27C400 is 4 Mbit (512Kb x8 or 256Kb x16 selectable by one pin) and the Kawai R-50/R-100 use the 256k x 16 arrangement.

Kit Information

R-100 stock ROM (KAA) is also known as CP1, or the standard/acoustic/classic kit
R-50e stock ROM (KAB) is also known as CP2, or the electronic kit
R-50 stock ROM (KAC) is also known as CP3, or the jazz/fusion kit

The R50iii has all three ROMS and is selectable with a keypress sequence:

pad 1 + power on = electric drum kit (R-50e mode)
pad 2 + power on = acoustic drum kit (R-100 mode)
pad 3 + power on = jazz drum kit (R-50 mode)

CP-1 (Acoustic)

Pad 1: BD1/BD2/BD3
Pad 2: SD1/SD2/SD3
Pad 3: TOM HI/COWBELL/AGOGO
Pad 4: TOM MID/CLAPS/CONGA
Pad 5: TOM LOW/SHAKER/TAMBORINE
Pad 6: HH CLOSE/HH OPEN/TIMBALE
Pad 7: RIDE 1/RIDE 2/CLAVES
Pad 8: CRASH 1/CRASH 2/CHINA

CP-2 (Electronic)

Pad 1: Atomic Kick/Room Kick/Acoustic Kick
Pad 2: Atomic Snare/Room Snare/Acoustic Snare
Pad 3: Electronic Tom Hi/Purple Rim Shot/Click
Pad 4: Electronic Tom Mid/Claps/Funk Bass
Pad 5: Electronic Tom Low/Mellow Bass/Electronic Snare
Pad 6: Closed Hi-Hat/Open Hi-Hat/Tympani
Pad 7: Orchestra Hit/Room Tom Hi/Finger Snap
Pad 8: Crash/Room Tom Low/Brass Hit

CP-3 (Jazz/Fusion)

Pad 1: Tight Kick/Brushes (Hit)/Fat Kick
Pad 2: Tight Snare/Brushes (Swirl)/Cross Stick
Pad 3: Guiro (Long)/Cowbell/Guiro (Short)
Pad 4: High Tom/Conga Slap/Conga
Pad 5: Low Tom/Cabasa/Bongo
Pad 6: Closed Hi-Hat/Open Hi-Hat/Pedal Hi-Hat
Pad 7: Edge Ride/Open Triangle/Closed Triangle
Pad 8: Soft Crash/Bell Ride/Mark Chimes

Casio RZ-1 MIDI SysEx

$
0
0

The traditional method of loading samples into the Casio RZ-1 is by sampling directly into the sample input. There is also the well known and documented feature of the MT jack which was designed exclusively for backing-up and restoring sample/rhythm data, but can also be exploited to sideload samples directly to the RZ-1, allowing bypass of the sampler input entirely.

However, historically, almost no RZ-1 users have been aware of the capability of the RZ-1 to backup/restore both sample and rhythm data by means of Sysem Exclusive messages. The MIDI SysEx capabilities of the RZ-1 are so poorly known that it is often erroneously stated as fact that the RZ-1 has no SysEx support. This is entirely untrue–in actuality, samples can even be sideloaded to the RZ-1 over SysEx much in the same way as the MT jack exploit.

The remainder of this article describes the technique of using SysEx with the RZ-1. SysEx sideloading utilities have been made available for download toward the end.

Note: While this information has been tested to work, the following implementation reference is the result of reverse engineering and is not based upon documentation published by Casio, so there may be inaccuracies or omissions.

Casio RZ-1 System Exclusive (SysEx) MIDI Implementation/Specifications

Note: All values are in hex — for example $F0 or F0h, depending on the notation preferred.

F0 44 01 00 7n zz 00

where n is MIDI channel (0 = channel 1, 1 = ch2, .. E = ch15, F = ch16)

where zz is for RZ-1 to do the following:

10 = MIDI SEND, sample RAM (from RZ-1 to sequencer)
14 = MIDI SEND, rhythm RAM (from RZ-1 to sequencer)
20 = MIDI RECEIVE, sample data (from sequencer to RZ-1)
24 = MIDI RECEIVE, rhythm data (from sequencer to RZ-1)

THE SEQUENCER MUST INITIATE COMMUNICATION!

RZ-1 responds F0 44 01 00 70 30 to any of those four requests — which is one major mistake by Casio, IMHO.

MIDI SEND HANDSHAKING (RZ-1 to sequencer, commands 10 and 14)

– Sequencer sends handshake to RZ-1 of intended download: 7n 31 (7n is handshake channel check, 31 is handshake request-to-send command)

– RZ-1 sends reply of nibblized data: h1 l1, h2 l2, .. ..

– If RZ-1 has more data to send then it sends a handshake of: 7n 32 (7n is handshake channel check, 32 is handshake more-to-send reply)

– As needed, sequencer sends another handshake: 7n 31 (7n is handshake channel check, 31 is handshake request-to-send command)

– RZ-1 again sends nibblized data: h1 l1, h2 l2, .. .. for length of RAM dump (or has more data which requires more handshaking)

– Handshakes must proceed until Tx/Rx is done — only 256 bytes can be sent at a time (not counting SysEx codes or handshaking bytes), but those are nibbles which really only amounts to 128 proper bytes of data! Manually handshaking by sending one 70 31 reply per second seems to work well, but is quite tedious — an automated script which only replies when the RZ-1 sends its 70 32 handshake would be far superior. The CZ-style trick of flooding the RZ-1 MIDI buffer with handshake acknowledgements tends to stop the RZ-1 prematurely.

– RZ-1 terminates transmission with F7. Sequencer can send either another handshake or F7 to bring RZ-1 out of MIDI SEND mode.

It’s recommended to immediately edit the received header accordingly before saving it for later use, so that dumps can easily and properly be played when it comes time to reload them (see section below).

MIDI RECEIVE HANDSHAKING (sequencer to RZ-1, commands 20 and 24)

– Sequencer SysEx to be sent to the RZ-1 must have the automatically generated header of F0 44 01 00 70 30 removed and replaced with the proper receive request — either sample or rhythm. Generally F0 44 01 00 70 20 00 for samples and F0 44 01 00 70 24 00 for rhythm, but please reference the formatting guide at the beginning of this document.

Note: The resulting size of a properly edited SysEx sample dump is 33,030 bytes, ???? bytes for rhythm.

– Sequencer sends data but the return handshakes have been encoded by the RZ-1 previously during the transmission to the sequencer, so none need to be added as they are automatically played back at the proper points.

– Sequencer and RZ-1 both terminate transmission with F7

ENCODING INFORMATION

Last byte in sample RAM (before turning into high/low nibble bytes) — these would be the final two bytes directly before F7 when in SysEx form:

bit 0~4 = unused; all must be 0 or sample RAM will reinitialize on boot — if bit 0, 1, 2, 3, or 4 are set then configuration is corrupt
bit 5 = SAMPLE 1~4 linked (must be exclusively set); hexcode of $20
bit 6 = SAMPLE 3+4 linked (can be mutually set w/ bit 7); hexcode of $40
bit 7 = SAMPLE 1+2 linked (can be mutually set w/ bit 6); hexcode of $80

SAMPLE 1+2 paired and SAMPLE 3+4 paired = hexcode of $C0
SAMPLE 1, 2, 3 and 4 are not linked (each pad independent) = hexcode of $00

Odd technical minutiae regarding the RZ-1 sampling feature:

Sample pads 1, 2, and 3 all hold the same amount of sample data. Sample pad 4 actually holds slightly less than any of the other pads, so it ends up being imperceptibly shorter than the rest — about 1 sample fewer. The last couple bytes of sample RAM are used to hold general data instead of sample points.

UTILITIES

WAV to SysEx and SysEx to WAV Encoding/Decoding Utility (plus bonus SysEx kits)

Contrary to any other inaccurate information encountered on the Internet, the sample format for the RZ-1 is: signed 8-bit, mono, 20kHz

The RZ-1 uses only 8-bit samples for both RAM & ROM, although capable of utilizing 10-bits of dynamic range–not 12-bit or 24kHz as sometimes described.

Bome SendSX 1.40 with the following settings (which may or may not matter) is known to work:

Speed: 989 bytes/s
Sending MIDI = Split & Throttling
Loading Files = Split

Just load and send. That’s it. Although it should be noted that the RZ-1 can’t be playing back, so it needs to be powered on, hooked to both MIDI in / MIDI out, on Channel 1, and also in its normal “standby” mode with nothing special happening.

It should go without saying that these will erase anything already sampled, so don’t be surprised when the sample pads sound different. That’s the point.

Casio RZ-1 ROM Hacking Masterclass

$
0
0

Note: It is advisable to reference the prior companion article on Casio RZ-1 PCM sound ROM hacking for thorough understanding.

An augmentation to standard sound ROM hacking is EPROM bank switching. This method provides selection of four different kits on-the-fly instead of having to physically swap out single kit chips over-and-over, as–even with an external ZIF socket–this is tedious and prone to error and damage.

909, DMX, RZ-1, and 808 kits without repeatedly opening up the machine?

Four Bank Selection Hack

Additional Materials Needed:

Two SPDT sub-miniature switches (or an electrical equivalent such as a binary encoder)
Two 27C010 EPROMS

Also, if your RZ-1 does not already have sound ROM sockets fitted, 32-pin sockets are highly recommended. Please reference the end of this article for clarification.

Note: The Casio RZ-1 uses two separate chips to store its sounds, so all steps have to be applied to both sound ROM A and sound ROM B.

Four 27C256 banks will fit on one 27C010, so choose four standard sized (27C256 type, 32K file size) RZ-1 sound ROM binaries which are designed for sound ROM A. Join those ROMs together into one file using a hex editor or the Windows command-line, such as:

copy /b 808_A.ROM + 909_A.ROM + DMX_A.ROM + RZ1_A.ROM 27C010_A.ROM

Do the same for the sound ROM B binaries (which should obviously be selected to match sound ROM A). The resulting ROM files should be written to the blank 27C010 EPROMs with an appropriate hardware programmer.

Note: Make sure the ROMs are joined in the same order for both sound ROM A and sound ROM B, or one half of the drum kit will not match the other half! Also, make sure to label which 27C010 is for ROM A and ROM B as the chip positions cannot be swapped.

Next, carefully and gently bend out pin 3 of both 27C010 chips to approximately a 45 degree angle. WARNING: DO NOT BREAK THE PINS OFF!!!!

The 27C010 is a 32-pin chip and the original 27C256 is only 28 pins, so the new chips will not fit without a degree of surgery.

Pins 1, 2, 31, and 32 are going to overhang the socket** and not be connected to anything on the PCB. Pin 3 of the 27C010 is bent out so it will “miss” pin 1 of the socket. The rest of the chip should be fit normally into the socket. In other words, square up the end of the chip without a notch with the end of the socket without a notch; the notched end of the 27C010 will be dangling four pins beyond the notched end of the socket.

On the top-side of 27C010, bridge Pin 30, 31, and 32 and then jump a wire across to Pin 1. Make sure to do this across the top portion of the pins instead of the bottom because pin 30 needs to still fit in the socket. Pin 30 gets +5V from the socket and will thereby supply it to the overhanging pins to which it is now connected.

Again, this procedure must be done for both ROM A and ROM B 27C010 chips.

Pins 2 and 3 are where the magic happens; these are the extra two address pins that will enable access to four banks total instead of only one.

All that is needed to control the address pins are two SPDT toggle switches. The middle leg of one switch will go to Pin 3 (A15) and the middle leg of the other switch goes to Pin 2 (A16). Connect one leg of each switch to ground, and the other leg of the switch to +5V. But, to make this reliable and electrically sound, it is highly recommended to add pull up/down resistors before soldering the switch wires to +5V and ground. To do so, place a resistor at the end of all four switch wires which will be connected to +5V or ground. Connect the resistors to the end of the wire which is furthest from the switch itself. To clarify: Two resistors are needed per switch — one for +5V line and one for ground. Do not add a resistor to the middle leg, as that is connected to an address line. The resistor value should be 10K or lower, so 4.7k or 330 ohm are also easy to find candidates.

The switches are shared between sound ROMs A and B, so wire ROM B in the exact same manner. Special attention is required, however, to make sure Pin 2 for ROM A and ROM B are going to the same leg of the same switch, and Pin 3 for both ROM A and ROM B are connected to the respective switch. In other words, when flipping a switch, both ROM A and ROM B should toggle the same address (either A15 or A16) at the same time — when ROM A A15 goes low, ROM B A15 should go low as well, and when ROM A A15 goes high, ROM B A15 should go high. A16 should behave likewise. If A15/A16 for ROM A are opposite in respect to ROM B then the RZ-1 will switch to mismatched kits.

As the switches control the various states of on/off, there are four unique combinations:

S1 S2

0   0   bank 1
0   1   bank 2
1   0   bank 3
1   1   bank 4

Switch placement is left to the discretion of the mod installer, but a suggestion is to drill two small mounting holes on the front left-side of the black metal base. This will prevent accidental physical exposure to the switches due to the overhang of the top chassis.

NOTES AND AFTERTHOUGHTS ADDENDUM

Clearly, if reprogramming the sounds is desired then desoldering the switches from Pins 2 and 3 will be necessary, as well as the jumpers between Pins 1, 2, 31, and 32. Pin 3 will also need to be unbent so it’s inline with the rest of the pins again — not terribly graceful. Which leads to…

** an unaltered RZ-1 will not actually have a socket, but the PCB only has 28 holes, so the point remains. The above technique should be used if the RZ-1 has already been fitted with 28-pin sockets, or if one is planning on fitting 28-pin sockets during the mod, however, if your RZ-1 has not already been modded then 32-pin sockets are advisable.

Ideally, to make the 27C010 hack a “permanent” install, one would use a 32-pin socket (instead of 28-pin) and bend out pins 1, 2, 3 and 30, 31, and 32 before soldering it to the PCB. On the socket, connect pins 1, 30, 31, and 32 together and then jump a wire to the former pin 28 hole on the PCB (where pin 30 of the 27C010 would have lined up if it was not bent out).

Now the switches for pins 2 and 3 can be permanently attached to the 32-pin socket instead of directly to the 27C010 chip which makes reprogramming much easier.

A semi-permanent method would be to install 28-pin sockets on the mainboard, but use a 32-pin socket as a caddy. The 32-pin socket will fit into the 28-pin socket with the 32-pin socket modified and installed with the same method as directly above.

Ultra-Advanced Hacking

The ultra-advanced sound hacker can go a step further and alter the program ROM with custom sample lengths so that sounds which are longer than the equivalent stock drums can be used instead, although obviously the total available space per EPROM remains the same — for one sound to be longer then others must be shorter by the exact same total amount. However, tightening up the toms and open hi-hat in particular will provide extra space for otherwise impossible sound replacements such as gated snares, extended 808 kicks, etc. Anyone wishing to pursue this high-degree of customization is advised to contact R-Massive directly, as it requires replacing the OS (system/program) ROM with one patched in a very specific manner.

Another drawback to this method is that pre-made kits will no longer align properly, so every sound ROM needs to be specially tailored to the custom layout.

Akai S900 Archive

$
0
0

Firmware

Last known revision for S900 is 1.2C. Multiple variants of 1.2 are known but the Akai S900 1.2A EPROM binaries are available for repair and updating purposes.

Additional Features of v1.2

– One Shot mode (page 14 of Edit Program)
– Previous Sample Bandwidth display
– MIDI Program Change enable/disable
– MIDI loudness send/receive (MIDI channel volume?)
– Sustain previous voices while changing patches
– Boot OS from floppy

Note: Burning the ROMs requires an EPROM programmer and two 27128 type EPROMS.

Akai S900 Disks

S900 OS Disks
(requires v1.2 / 1,2 firmware; update using the above firmware, if necessary)

Operating System v2.1
Operating System v4.0

Additional Features of OS 2 and 4

1. Pre-trigger recording
  – retains 2000 samples prior to transient (preserves attack)
2. Special one shot mode
  – auto-handling of drum machine MIDI
3. Crossfade looping
  – page 13 of Edit Sample
4. Dynamic Filtering
  – ADSR control, no resonance; page 17 of Edit Program
5. Automatic locating of start point
  – trims gaps; page 6 of Edit Sample
6. Velocity release by note on
  – page 10 of Edit Program
7. Combine two samples for velocity crossfade type samples
  – page 15 of Edit Sample
8. Changing the velocity mix curve for velocity crossfade
  – page 4 of Edit Program
9. Time skew for velocity
  – page 14 of Edit Program
10. Key group copy function
  – page 3 of Edit Program
11. Disk mode: Compression of sampled data (OS4 only)
  – saves disk space; enable/disable via Disk menu

S900 Bundled Floppy Disks
(see page 23 of the Operator’s Manual for more details)

S900 Operation Guide Disk
SL501 – Grand Piano #1
SL502 – Chopper Bass

S900 Sound Library (SL5xx)

Note: See premium content information at the bottom of the page.

SL503 – Drum Kit #1
SL504 – Voices, Flute, Vocal
SL505 – Orchestra #1
SL506 – Strings #1
SL507 – Brass #1
SL508 – Harp Gliss, Cello-Viola, Pan Pipes
SL509 – Pizz Strings, Eastern, Kalimba
SL510 – The Stick
SL511 – Bells, Strings, String Bell
SL512 – Guitars #1
SL513 – Effects #1
SL514 – Clarinet, Brook, Harp Pluck, Glock Harp
SL515 – Glass Bell, Choir, Voice Strings
SL516 – Ooos (Chorus)
SL517 – Acoustic Guitar, Classical Guitar
SL518 – Ring Mod 1/2, Solo Guitar
SL519 – Violin Cellos
SL520 – Acoustic Bass, Bass1~7, Fretless 1/2
SL521 – Strings #2
SL522 – Strat Guitar
SL523 – Choir 1/2/3
SL524 – Choir 4
SL525 – Choir 5
SL526 – Les Paul, 12 Strings
SL527 – Les Paul VS
SL528 – Solo Violin, Slow Violin, Violin Sect
SL529 – Cello #1
SL530 – Ethnic Percussions
SL531 – Harp #1
SL532 – Violin #1
SL533 – Contra Bass, Cello, Violin
SL534 – Viola
SL535 – Vibraphone
SL536 – Pan Flute
SL537 – Flute, Piccolo
SL538 – Bass Flute, Alto Flute
SL539 – Ocarina
SL540 – Recorder
SL541 – Bass Recorder
SL542 – Fretless Bass
SL543 – Brazilian Guitar
SL544 – French Horn
SL545 – Church Bell, Church Organ
SL546 – Tenor Sax, Trombone, Flugelhorn
SL547 – The Islands, Marimba, Vibraphone
SL548 – Rolling Timpani, Gong
SL549 – Synthe Bass 1~7
SL550 – Guitars #2
SL551 – Effects #2
SL552 – Harpsichord, Tubular Bells
SL553 – Orchestra Hit #1
SL554 – Latin Percussion, Conga
SL555 – Effects #3
SL556 – Orchestra #2
… (number and titles 557~580 are unknown and unverified) …
SL581 Multi Sound 1
SL582 Synth Sound 1
SL583 Dry Kit

S950 (SL50xx) Sound Library (also backwards compatible with S900)

Note: Unavailable.

These disks utilize the maximum capabilities of the S950 and have been recorded with a sampling rate of 48kHz for sound that surpasses CD quality. They can also be used with the S900 and the S1000 series samplers.

SL5001 – Off Mic Piano
SL5002 – Electric Piano
SL5003 – Rich Strings
SL5004 – Violin Pizz & Marc
SL5005 – Viola Pizz & Marc
SL5006 – Real Choir
SL5007 – Brass Section #2
SL5008 – Trumpets
SL5009 – Saxes
SL5010 – Wind & Mallet
SL5011 – Chopper Bass #2
SL5012 – Wood & Fretless Bass
SL5013 – Bass Variation
SL5014 – Nylon Guitar
SL5015 – Synthe & Techno Kit
SL5016 – Kick & Snare
SL5017 – Percussion #3
SL5018 – Percussion #4
SL5019 – Ethnic Percussion #2
SL5020 – African Percussion

PSL9xxx Library for S900/S950

Note: See premium content information at the bottom of the page.

PSL9001 – Orchestra
PSL9002 – unknown
PSL9003 – Grand Piano
PSL9004 – Gigging Piano
PSL9005 – Moog/MKS/Emu Basses
PSL9009 – Mixed Choir
PSL9010 – unknown
PSL9011 – Live Drums 1
PSL9012 – Drums & Percussion 1
PSL9013 – Electronic Drums
PSL9014 – unknown
PSL9015 – unknown
PSL9016 – Special Strings
PSL9017 – unknown
PSL9018 – Songwriter
PSL9019 – unknown
PSL9020 – unknown
PSL9021 – Collection 1
PSL9022 – unknown
PSL9023 – unknown
PSL9024 – unknown
PSL9025 – Linn Drums
PSL9026 – unknown
PSL9027 – Trombone / Alto Grr Sax
PSL9028 – Trumpet / Jazz Tenor Sax
PSL9029 – unknown
PSL9030 – unknown
PSL9031 – Trumpet Classic
PSL9032 – unknown
PSL9033 – String Orchestra
PSL9034 – Cello
PSL9035..43 – unknown
PSL9044 – Grand Choir
PSL9045 – Dual Bah Choir
PSL9046 – Hammond 1
PSL9047 – Hammond 2
PSL9048 – Electric Guitar with Chorus
PSL9049 – unknown
PSL9050 – Acoustic Picking Guitar
PSL9051 – Sitar
PSL9052 – Banjo Dobro
PSL9053 – unknown
PSL9054 – unknown
PSL9055 – Trumpet II
PSL9056 – Sax ‘n’ Flute Set
PSL9057 – Marimba
PSL9058 – Humour
PSL9059 – Classical Flute
PSL9060 – Band Disk

Akai S900 Bad RAM (D-RAM) Bit Codes

These are verified and definitive codes; no guesswork involved.

IC45 = DJ0
IC46 = DJ1
IC47 = DJ2
IC48 = DJ3

IC49 = DJ4
IC50 = DJ5
IC51 = DJ6
IC52 = DJ7

IC53 = DJ8
IC54 = DJ9
IC55 = DJ10
IC56 = DJ11
IC57 = DJ12
IC58 = DJ13
IC59 = DJ14
IC60 = DJ15

IC61 = DK8
IC62 = DK9
IC63 = DK10
IC64 = DK11
IC65 = DK12
IC66 = DK13
IC67 = DK14
IC68 = DK15

IC69 = DK4
IC70 = DK5
IC71 = DK6
IC72 = DK7

Service Manual

An all new, high-quality scan which includes the rare CPU addendum is now available — see premium content information below.

ASK90 Information

Once an Akai S900 is fitted with the ASK90 expansion board, pressing that oh-so-mysterious Utility button will show various information and settings regarding the drum inputs.

Page 1 (Global Settings) — The ASK90 drum triggers can be enabled or disabled via the DRUM INPUTS ON/OFF menu option. Global input sensitivity can be set to either high or low.

Page 2 (MIDI Settings) — MIDI channel, note/pitch, and on-time can be set per trigger input. The on-time parameter has a range of 1-9,999 milliseconds. A MIDI note off event will be generated if any given input is triggered twice within the duration set by the on-time parameter. MIDI data is generated using these settings by the ASK90 during trigger input events, and the data is then relayed to the S900 MIDI output.

Page 3 (Input Settings 1) — Each of the eight inputs has a capture time parameter which sets the signal detection time within a range of 1-20 milliseconds. Higher times provide greater signal detection accuracy, but will necessarily increase the trigger latency. MIDI velocity is based upon the peak audio level detected within this capture time. Recovery time (1-99ms) can be reduced to 1 for very rapid response, or increased to prevent false re-triggers.

Page 4 (Input Settings 2) — A bar graph is presented to monitor the trigger level currently being adjusted. Unlike the global input sensitivity setting on Page 1, the gain parameter in this menu is per channel and ranges from 1 to 99. Likewise, trigger threshold is also set per input with a maximum ceiling of 40 and minimum of 1.

The ASK90 configuration data can be saved or loaded using the Disk menu. A newly accessible ninth page contains a LOAD/SAVE DRUM SETTING command so the ASK90 does not have to be calibrated or readjusted at every reboot or power off event. There is no way to store multiple configurations for the ASK90 on the same disk, but this can be worked around by using additional disks, if necessary.

The ASK90 came with one floppy disk featuring drum kit samples (bass, snare, three toms, rimshot, cowbell, metal, open/closed hi-hat, ride, and crash cymbal. These are arranged into three drum kits: small dynamic range, large dynamic range, and no cymbals.

Floppy Emulator Installation and Setup Guide (Gotek/HxC specific)

The correct and easiest way to install a Gotek with HxC firmware into an Akai S900 — with pictures, explicit instructions, and all the configuration, update, and disk image files needed to get started with an HxC-flashed Gotek.

 

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.

Note: Not all disks listed above are available. The library archives are currently incomplete, but will be updated if/when the missing disks are obtained.

This content is protected. Please enter the password to access it.

 

Ensoniq ASR/EPS Archive

$
0
0

Ensoniq ASR-10 Factory Bundle

Essential Sound Disk AD-001
Grand Piano 1
Revelation (Transwave)

Essential Sound Disk AD-002
Orch Strings
ASR Flute

Essential Sound Disk AD-003
Roads Keys 2
Clean Guitar
Percussion 1

Essential Sound Disk AD-004
French Horns
Rods Keys 1
Air Choir

Essential Sound Disk AD-005
ASR Organ
Jazz Bass
Mutes Trmpet
Tenor Sax
Fog
Solitude

Essential Sound Disk AD-006
Steel String
Nylon GTR 1
Rez Bass 1
Electric Bass

Essential Sound Disk AD-007
Stereo Drums

Essential Sound Disk AD-008
Demo Kit ASR
Versa Bass
Demo Percs
Demo Synth
Demo Flute
Demo P5-B3
Demo Effects
ASR Lead GTR

Ensoniq EPS-16 Factory Bundle

ED-001
Flute 1
Piano 241
Jazz Bass
Jazz Drums
Blues Rondo
ED-002
Rock Drums
Rock Bass
OB-8
Multi Organ
Dist. Guitar
Demo
ED-003
TR-808
Hot Moog
Pad Punch
Demo
ED-004
Jazz Clarinet
Tymps + Piatti
Anna-Voxes
Demo
ED-005
Bosendorfer
Piano Song
ED-006
Bosendorfer Part 2
Fretless
Digital Keys
Pop Trax
ED-007
Steinway Part 1
Demo
ED-008
Steinway Part 2
Tenor Sax
Rap Tools
Sax Song
Rap Song
ED-009
Percussion
Hip Orch. Hit
Gringo Loco
ED-010
Nylon Guitar
Rock Steel
Nylon/Steel Song
ED-011
Miami Brass
LA Guitar
Brass/Guitar Song
ED-012
Choir Girls
Choir Song
ED-013
Full Strings
String Song
ED-014
Choice Drums
Demo
ED-015
Club Scene Demo

OS, Utilities, & Other Materials

GKH2IMG (file converter utility)

Note: GKH format is the same as a standard raw image file except with a 58-byte header. This utility simply strips the header which can also be done manually with a hex editor.

Ensoniq EPS16 – Diagnostics (Test & Burn-In) Disk Bundle

Ensoniq EPS (classic/original) – Diagnostics (Test & Burn-In) Disk Bundle; available, to be added soon

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.

This content is protected. Please enter the password to access it.

 

Samsung Mesmerize (SCH-i500) to Jelly Bean

$
0
0

DISCLAIMER: EVEN WHEN CONDUCTED PROPERLY, THESE INSTRUCTIONS MAY POSE A RISK LEGALLY, OR PHYSICALLY TO YOURSELF AND / OR YOUR PROPERTY. YOU ACCEPT ALL RESPONSIBILITY BY PROCEEDING.

Please read all the instructions before preceding. There is a definite danger of altering your phone in a non-desirable way — from loss of all functionality, to loss of data, to loss of some features, to voiding your warranty, to being stuck on the wrong cellular network, etc.

If you have a stock Samsung Mesmerize (U.S. Cellular’s version of the i500 series) then you are most definitely limited to an outdated Android OS codenamed Gingerbread. If you’re feeling adventurous and want to update to the more modern Jelly Bean, then here’s a step-by-step guide. This won’t work on every i500, only the Mesmerize. Even though the principles are very similar for the Fascinate, etc. you will potentially brick your phone if you attempt this on anything but a U.S. Cellular i500.

Samsung Mesmerize

Samsung Mesmerize

If you are feeling the hacker spirit and wish to continue, then you will need to obtain various software utilities. We have conveniently bundled all these utilities into one pack which is available at the bottom of this article.

PREP STAGE:

Inside the download bundle you will find a selection of software to install to your Windows computer.  Please install the following programs:

Odin3 v1.83
Samsung Mobile USB Driver V1.3.550.0 SCH-i500 Mesmerize
Samsung Drivers (either the x86 or x64 package dependent upon your Windows OS version)

Also place “cwm-recovery-ALL.tar” on your desktop or in another convenient folder.  We will be using it with Odin.

Now connect your phone to your computer using a USB cable, and enter “Mass Storage” mode.  Please copy the following files to the SD card in your phone:

cwm4_fixed_for_cm7-CWM.zip
Framaroot-1.4.1.apk
cm-10.1-20130717-NIGHTLY-mesmerizemtd.zip
gapps-jb-20130301-signed.zip

PHASE ONE – ROOTING:

Assuming that you have never modded your phone at all before, then you first need to Root it.  All this does is unlock various restrictions and allows you “Admin” or “Superuser” privileges, i.e. lets you have total control of the device you own.

First you will need to make sure you can run apk files that are not from Google Play.  Go into your phone Settings menu and check “Unknown Sources”.  Also go to Settings / Applications / Development / USB Debugging and make sure that is enabled.

Open your File Management app, and run the Framaroot-1.4.1.apk file we previously copied to your phone’s SD card.  Follow the install instructions and then run the Framaroot app.  You will (hopefully) see a list of exploits named after Lord of the Rings characters (Legolas, Aragorn, etc.)  Select one of the exploits listed and run it.  Attempting Aragorn should work, but if it fails then try any other available exploits.  It’s almost certain that one will succeed.

Wait a few minutes for the app to process and restart your phone.  Yay! You should be a Superuser now!

PHASE TWO – DOWNLOAD MODE:

Open the Odin application that we installed earlier on your PC.  Click on PDA, then browse to find the “cwm-recovery-ALL.tar” file.  Double-check to make sure the option “Re-Partition” is NOT checked.

In order for Odin to flash this CWM recovery file to our phone, we must enter “Download Mode”.  We have to do a few strange things to enter that mode.  First, remove your battery.  Second, plug in the USB cable to ONLY your phone (not the computer at this time).

While holding both the Volume Up and Volume Down buttons, put the battery back into the phone and then plug in the other end of the USB cable to the computer.  You should see the Download mode screen pop up.

Android Download

Android OS – Download Mode

If you see only the standard “charging battery” graphics then you are not in Download Mode.  Try the steps again.

Once connected, hit the “Start” button on Odin and wait for the recovery to flash.  The phone will reboot, and then you can disconnect it and close Odin.

PHASE THREE – RECOVERY MANAGER:

Turn off your phone.  Use the following hotkey combo to enter our freshly installed Clockworkmod Recovery (aka CWM):

On your phone, hold down the Volume Up and Volume Down button and then start holding the Power button as well.  Wait until the Samsung splash screen appears and then let go of the Volume Up button (while still holding the others).  You can let go of the buttons when you see red text appear that says “2.5.1.x Voodoo Lagfix”.  Now you’re in recovery mode.  We will be using the Volume Up / Down as up and down arrows to highlight a menu choice, and the Power button to select it.

CWM 2.5.1.x (Red)

CWM 2.5.1.x (Red)

The first thing to do in recovery mode is do a NANDroid backup.  This saves your phone as it is currently, in case you want to roll your phone back to how it was before you started messing with it.  To perform this backup, select Backup and Restore, then Backup again.  Go back to the main recovery menu after the backup process is completed.

Now that we have a backup to fall back on, we want to update our CWM to a more usable version.  The method for this is the “Install Zip from SD” option in CWM.  So choose that, and then it will ask us to select a file, and we will choose “cwm4_fixed_for_cm7-CWM.zip”.  It will ask us to confirm our selection, which we will do.  This will update and bring us back to recovery mode, but our screen text will no longer be red – this means we are on CWM4 instead of CWM2.

We’re really starting to get there!  Only a few more steps to go, but they are quite important, so read carefully, and follow them precisely.

We are now going to update CWM4 to CWM6, but since CWM6 is part of the Cyanogenmod version of Jelly Bean that we are attempting to install, we must prepare to install Jelly Bean.  The steps for this are as follows:

First, select “wipe data/factory reset”, then confirm your selection.  This will take a few seconds to do.  After it is finished, go back to the CWM main menu.

Second, select “wipe partition”, then confirm your selection.  This will take just a moment.  After it is finished, go back to the CWM main menu.

Third, select “advanced”, then “wipe dalvik cache”, and confirm your selection.  This should be very quick.  After it is finished, go back to the CWM main menu.

Fourth, select “Install Zip from SD”, select “cm-10.1-20130717-NIGHTLY-mesmerizemtd.zip”, and confirm your selection.  This starts the ROM installation procedure, but it will not fully complete, because it needs to install CWM6 first.

After it is finished installing CWM6, your phone will reboot into recovery.  Yet again, our CWM screen should look different.

ClockworkMod 6

ClockworkMod 6

Now we are on CWM6 (but not on Jelly Bean yet), so we will need to finish our procedure.

Repeat the entire procedure of wiping data, partition, and dalvik cache.  Then repeat the “Install Zip from SD”, once again selecting the same “cm-10.1-20130717-NIGHTLY-mesmerizemtd.zip” file. Now that we are running CWM6 the Cyanogenmod Jelly Bean installer should be able to finish in full.

Once Cyanogenmod Jelly Bean has finished installing, you may choose “Install from SD”, and select “gapps-jb-20130301-signed.zip” if you so desire.  This installs the Google apps package.  This isn’t mandatory, but it may be useful to you.

That’s it for what we need to do in recovery mode, so return to the main recovery menu and select “reboot system”.  The phone will then boot into Jelly Bean with a Cyanogenmod flash screen. You should be aware that this first boot sequence will take about five minutes to configure.

CyanogenMod 10

CyanogenMod 10

Enjoy your new updated and unlocked Samsung Mesmerize!

Returning to Previous ROM:

To go back to your previous ROM, boot into recovery, select backup and restore, and then restore your backup.  This will put you back on your original OS and restore your files

Note: This will leave your Root access as well as your current CWM.

HOW TO DOWNLOAD THE GINGERBREAD TO JELLY BEAN SOFTWARE PACK:

Accessing our premium content requires a password. To receive the password, please Like us on Facebook and send a message to our page.

This content is protected. Please enter the password to access it.

 

Netgear WG111v3 54G Windows 8.1 Drivers

$
0
0

Windows 8.1 x64?  No problem!

Windows 8.1 x64? No problem!

If you happen to be using an old WG111v3 USB WiFi adapter, you might be frustrated by the lack of driver support from Netgear. The last official revision of the drivers is located below:

http://kbserver.netgear.com/de-support/download8a75.html

As you can see, development stopped at Windows 7 x64. Does that mean the chipset is incompatible with Windows 8 or 8.1? NO!!! It simply means that Netgear was too lazy to port their legacy drivers to a modern OS. Due to Netgear’s apathy, we have decided to make Windows 8.1 x64 drivers available.

Download unofficial Netgear WG111v3 Windows 8.1 x64 drivers.

NOTE: These are unsigned and Beta. Install them at your own risk. These drivers have been briefly tested and seem to work just as well as the official drivers work on Vista/7 x64, but stability is not guaranteed. If something happens to your system, it’s your problem. Period.

If you prefer using the Netgear utilties that come bundled with the official drivers, you can install the official Netgear drivers here, but you’ll notice that although the utilities install properly, the drivers themselves refuse to install. This is the root of our problem, and why we need the unofficial drivers.

After you have downloaded the unofficial drivers, extract them to somewhere convenient (i.e. Documents or Desktop folder). The drivers have no installer, so we will need to go into Device Manager in order to manually install the drivers.

But there’s a big problem we need to resolve first. Windows 8.1 is particularly adamant about not allowing any drivers to be installed that haven’t received the Microsoft official stamp of approval. This isn’t such a bad idea, as maliciously hacked drivers can be very dangerous. Unfortunately, you run into cases like this where the vendor no longer supports their products and then when you try to install a 3rd party driver, Microsoft doesn’t want to let you. Here’s what we need to do:

In the charms menu, go to Settings, then Power. Hold down Shift on the keyboard and click “Reboot”. Choose “Troubleshoot”, “Advanced options”, “Startup Settings”, then “Restart”. Your computer will reboot, and present you with a menu letting you select various diagnostic options/modes. Pick “Disable Driver Signature Enforcement”. You will now boot into Windows in a special mode that will let us install our unofficial drivers. So far, so good.

From the desktop, press Win+X on your keyboard and select Device Manager, or type “Device Manager” into the Windows 8.1 Search charm. This will bring you to a list of all the hardware in your computer.

Find the listing for Netgear WG111v3 (it should have a yellow exclamation mark) and double-click it. Go to Drivers tab, then Update Drivers. Choose “Browse my computer for drivers software”, then Browse again. Locate the folder where you extracted the unofficial drivers and click Next. You will get a warning that the drivers are unsigned. This is normal. Choose to install them anyway. If you go to Device Manager after installation, you’ll notice that the Netgear adapter is now called Realtek RTL8187B instead. This is perfectly normal.

And there you have it, a working WG111v3 on Windows 8.1 x64!!! Congratulations on breaking free from the constraints of Netgear’s lack of support.

Adaptec AIC-7870 SCSI Drivers (x86, x64)

$
0
0

Adaptec PCI SCSI on 64-bit?  No problem!

Adaptec PCI SCSI on 64-bit? No problem!

The Adaptec 78xx series is a legacy PCI SCSI card, and Adaptec has no official 64-bit drivers available through their product support. These drivers are incredibly hard to find in the x64 variety, and they also present an additional challenge to install on Windows 8.1 even if you can magically obtain them. Here’s the solution:

First download the unofficial Adaptec 78xx series x64 drivers.

NOTE: The 32-bit (x86) drivers for this legacy PCI SCSI card are difficult to find as well, so they are included in this bundle for convenience. Ignore them if they do not apply to you.

After you have downloaded the unofficial drivers, extract them to somewhere convenient (i.e. Documents or Desktop folder). The drivers have no installer, so we will need to go into Device Manager in order to manually install the drivers.

NOTE: If you’re trying to install these on Windows 8.1, there’s a big problem we need to resolve first. Windows 8.1 is particularly adamant about not allowing any drivers to be installed that haven’t received the Microsoft official stamp of approval. This isn’t such a bad idea, as maliciously hacked drivers can be very dangerous. Unfortunately, you run into cases like this where the vendor no longer supports their products and then when you try to install a 3rd party driver, Microsoft doesn’t want to let you. Here’s what we need to do:

In the charms menu, go to Settings, then Power. Hold down Shift on the keyboard and click “Reboot”. Choose “Troubleshoot”, “Advanced options”, “Startup Settings”, then “Restart”. Your computer will reboot, and present you with a menu letting you select various diagnostic options/modes. Pick “Disable Driver Signature Enforcement”. You will now boot into Windows in a special mode that will let us install our unofficial drivers. So far, so good.

Windows 8.0 / 8.1:
From the desktop, press Win+X on your keyboard and select Device Manager, or type “Device Manager” into the Windows 8.1 Search charm. This will bring you to a list of all the hardware in your computer.

Windows 7:
Click on the Windows 7 Start button. Type the in “devmgmt.msc” into the search box and then hit the Enter key.

Now find the listing for an unknown SCSI storage device (it should have a yellow exclamation mark) and double-click it. Go to Drivers tab, then Update Drivers. Choose “Browse my computer for drivers software”, then Browse again. Locate the folder where you extracted the unofficial drivers and click Next. You will get a warning that the drivers are unsigned. This is normal. Choose to install them anyway. If you go to Device Manager after installation, you’ll notice that the SCSI adapter is now named Adaptec AIC-7870 PCI SCSI Controller (Emulated). This is perfectly normal.

And there you have it, a working AIC-7870 on Windows x64!!!

Linksys BEFW11S4 v4 Firmware

$
0
0

Linksys BEFW11S4

This is a verified working firmware (1.50.10) for the Linksys BEFW11S4v4 Wireless-B router.

Since Linksys has dropped support for many of their legacy products, the firmware for this series is extremely difficult to come by. Even though this router is very old, it’s still useful as a switch, for testing purposes, or for low-end Internet use. It’s really quite unacceptable that tech companies drop web support for their legacy products. Surely there’s enough room on their servers for hosting a PDF user manual and a couple of ultra tiny firmware files, at the very least. This is a disturbingly common trend amongst businesses that should pride themselves in being technologically savvy.

This firmware might come in handy if you find that your BEFW11S4 is no longer working properly, and a hard reset doesn’t rectify the issue. You may also need this firmware if you have a bricked router.

If the power light is rapidly blinking and you cannot connect to it via 192.168.1.1, then it is almost definitely bricked. Here’s how you fix it:

Download Linksys BEFEW11S4v4 1.50.10 Firmware (befw11s4v4-fw-15010.zip)

Extract this ZIP archive to a new folder.

Change the TCP/IP(v4) settings on your computer to a static IP using these settings —

IP: 192.168.1.10
SUBNET: 255.255.255.0
GATEWAY: 192.168.1.1

Connect your PC directly to the bricked router with an ethernet cable (it does not need to be a special yellow crossover cable).

Run the tftp.exe program which can be located in the folder to which you extracted the firmware package.

You will need to specify the address of the router (192.168.1.1), the password (admin), and the file (code.bin) which will be found in the same folder as the tftp program. Press the “Upgrade” button when you have filled out the required fields properly.

Wait for the progress bar to finish, and if your router wasn’t too damaged to recover, then you should see a success message.

To configure the router, go to 192.168.1.1 and leave the username blank, and use “admin” as the password.

Hurray! You’ve just brought back your decade old router back to life!

Remember to return your TCP/IP settings back to automatic, or whatever static IP you were previously using.

PSL1GHT v2 PS3 SDK on Ubuntu VM

$
0
0

INTRODUCTION

If you are interested in PS3 development, whether that’s coding your own homebrew, or simply compiling preexisting source code from other projects, you need to set up your own PS3 developing environment. This tutorial is a step-by-step, zero assumptions guide on how to get started in this potentially harrowing undertaking.

At the most basic level, creating PS3 apps consists of installing C++ compiler tools and a PS3 software development kit (SDK). All of these tools are oriented towards a Linux environment, so if you’re on a Windows machine then the only practical options are to dual-boot to a true Linux install, run Cygwin (which is a Linux like environment for Windows), or run Linux inside a virtual machine.

Cygwin can be a nightmare to configure, and dual-booting requires hard drive partitioning, but a virtual machine will give you a more-or-less native Linux without undue hardware preparation, so that’s what we will be choosing.

 

VIRTUAL MACHINE INSTALLATION

First thing we need to get is VMware Player. This is a freely available program to run our virtual machine. Go to VMware’s download page and download the most current VMware Player.

Next thing we need is an Ubuntu VMware image. Since a lot of PSL1GHT tutorials are oriented towards Ubuntu 10.10 and it’s known to work, we’ll be grabbing an archived version from Sourceforge. Yes, 10.10 is obsolete, but it also has a light footprint and runs well for our needs.

Note: You can opt to create a new blank VMware image and do a normal install from an Ubuntu 10.10 ISO if you don’t care to use, find, or download a Ubuntu specific VMware image — whatever is easiest.

Install VMware Player, extract the Ubuntu image, and then boot the Ubuntu VM with VMware Player.

You’ll likely see an “SMbus not found” error during boot. This is just a side-effect of the VM process and nothing to be concerned about. We’ll be fixing it later, but you can ignore it for now.

You’ll have to go through the installation process, but the only thing you need to really watch out for is that you cannot use spaces or capital letters in your Ubuntu username. Everything else is self-explanatory or the default settings.

You’ll be prompted to update the VMware Tools. Update them if you’re feeling savvy, or ignore it.

 

UBUNTU CONFIGURATION

Once we’ve finished setup and booted into Ubuntu, we need to install our compiler software and its related tools and dependencies. But here’s the problem:

10.10 is out-of-date and has reached its End of Life. That means all the update servers have been removed and you won’t be able to install any software packages or updates. Don’t worry, because the updates have been archived and we’ll simply tell Ubuntu where to find those archive servers so we can party like it’s 2011 again.

Go to the Applications menu, and open the Text Editor app (under Accessories). Open the file /etc/apt/sources.list (in File System). You’ll see all sorts of entries that involve links to servers. Those servers are no longer there, so we need to change all those entries to old-releases.ubuntu.com instead. We’ll use Terminal to do this, but I wanted you to see what we are changing, and why.

Close the file and Text Editor, and then run Terminal (in Applications/Accessories menu). Now we’re going to use an automated search to look for the outdated server entries in sources.list and replace them with the archive servers.

Any commands starting with sudo are running as a super-user, so you’ll have to provide your Linux user password when prompted — much like UAC under Windows.

sudo sed -i s/us.archive.ubuntu/old-releases.ubuntu/g /etc/apt/sources.list
sudo sed -i s/security.ubuntu/old-releases.ubuntu/g /etc/apt/sources.list

Now that we’ve replaced the old us.archive servers with the old-releases servers, we need to update our package installer program, so it will know what to do when we ask it to install our tools.

sudo apt-get update

 

INSTALLING COMPILER AND HELPER PACKAGES

Now that Ubuntu is squared away, it’s time to really get on with setting up our coding environment. We need to install Git, which is a program that helps keep track of all the revisions of source code floating around.

sudo apt-get install git

Now we’re going to grab and install a whole slew of tools. We’re starting with a fairly blank slate, so we must install various Linux tools that will let us compile source code (which is just a textual recipe) into a useable file — a.k.a. an executable binary.

These programs consist of a C++ compiler (gcc), a compiler helper for “makefiles” (automake), and a few others. These are generic tools and are generally needed, regardless of what you are compiling — PS3 code or otherwise.

sudo apt-get install autoconf automake bison flex texinfo libncurses5-dev gcc g++ make wget libelf-dev python2.6-dev python-dev zlib1g-dev libtool git-core libgmp3-dev libssl-dev pkg-config

 

PS3 SPECIFIC TOOLS

Our general coding environment is complete, now we need to get our PS3 specific packages installed, and our project directories created.

Make a temporary working directory to store two Debian packages we’ll be downloading:
mkdir tmp_psl1ght

Change to that directory:
cd tmp_psl1ght

Use wget (which we installed via apt-get earlier) to grab those two Debian packages from a webserver:
wget https://mirrors.mediatemple.net/debian-archive/debian/pool/main/e/elfutils/libelf-dev_0.148-1_i386.deb
wget https://mirrors.mediatemple.net/debian-archive/debian/pool/main/e/elfutils/libelf1_0.148-1_i386.deb

Those packages are for manipulating ELF files, which are the executable binaries for PS3 (the end result of compiling source code). You’ll typically be turning those into SELF or eboot.bin files and then bundling and launching them via PKG files, which is how PS3 homebrew is usually distributed.

Since Debian packages don’t need to be compiled, we can install them straight away:
sudo dpkg -i libelf-dev_0.148-1_i386.deb libelf1_0.148-1_i386.deb

bashrc is a script that is automatically run by Linux. We can use that automation to configure things for us that we’re going to use every time we go to code PS3 stuff. Let’s create some aliases for a few directories that we’re going to reference all the time and then add them into bashrc:
echo 'export PS3DEV=/usr/local/ps3dev' >> ~/.bashrc
echo 'export PSL1GHT=$PS3DEV/libpsl1ght' >> ~/.bashrc
echo 'export PATH="$PATH:$PS3DEV/bin:$PS3DEV/ppu/bin:$PS3DEV/spu/bin"' >> ~/.bashrc

Now that we’ve altered bashrc, we should actually run it to put the changes into effect:
. ~/.bashrc

Since we’ve created aliases for commonly used directories, and–thanks to running the script–Linux is now aware of what those aliases are, let’s put them to use. Remember, we only need to use the alias instead of the full path. Convenient!

Create a PS3 directory to store all your coding projects, and then take ownership of it:
sudo mkdir $PS3DEV
sudo chown $USER $PS3DEV

We’re going to create another alias to make life easy. It’s a working directory for building the ps3toolchain, and since it’s not going to be used all the time, we don’t have to add it to bashrc; it’s only for the here-and-now.

export BUILDDIR=/usr/src/ps3toolchain

Use Git to grab the ps3toolchain source code, and store it into our temporary build directory:
sudo git clone https://github.com/ps3dev/ps3toolchain.git $BUILDDIR

Take ownership of the entire build directory and all its contents:
sudo chown -R $USER $BUILDDIR

Change our directory to the build directory:
cd $BUILDDIR

Now here comes the fun. Just like running bashrc, we’re going to run another script. This one creates the entire PS3 toolchain. This takes hours, so go plan out your project or brush up on your coding.

Cross your fingers and pray for no serious errors:
./toolchain.sh

 

PSL1GHT INSTALLATION

As you can see, that step was quite involved. If you’re still hanging in there, then ask Git to grab PSL1GHT and drop it into the /usr/src/psl1ght directory:
sudo git clone https://github.com/ps3dev/PSL1GHT.git /usr/src/psl1ght

Take ownership of the directory and all its contents:
sudo chown -R $USER /usr/src/psl1ght

Change to the PSL1GHT source code directory:
cd /usr/src/psl1ght

Now make PSL1GHT from its source, and set it all into motion:
make all install

Take ownership of various directories and their contents:
sudo chown -R root:root $PS3DEV $BUILDDIR /usr/src/psl1ght

Create a ps3dev directory in your “home” directory:
mkdir ~/ps3dev

Copy PSL1GHT sample programs into our new ps3dev directory:
cp -r $BUILDDIR/build/psl1ght/samples ~/ps3dev

Change to our sample code directory and create binaries from the sample source code:
cd ~/ps3dev/samples
make

Change to our “home” directory and do some housekeeping (it should free up about 3 gigs of space):
cd ~
sudo rm -rf $BUILDDIR /usr/src/psl1ght

 

AFTERMATH

WHEW! That was a ride. Now go study PSL1GHT and build some code.

Oh… remember that SMbus error Ubuntu gives at boot? Here’s the fix:
sudo su
sudo echo "blacklist i2c_piix4" >> /etc/modprobe.d/blacklist.conf

Reboot and enjoy.

Viewing all 44 articles
Browse latest View live