Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Billabs BL27CB0P  (Read 2726 times)

0 Members and 1 Guest are viewing this topic.

the_77x42

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 63
  • Last login:June 16, 2025, 05:13:30 pm
Billabs BL27CB0P
« on: March 07, 2016, 11:31:18 pm »
I decided to dust off my old cabinet and update it with the latest MAME off an SSD. Things are working pretty great, after the complete reinstall, but I would like to try out GroovyMAME to see if I notice any difference in video quality. I notice Narc is annoyingly interlaced at its set resolution and for some weird reason it isn't picking up the changes I made to narc.ini from avres.

Anyway, right now my setup is an archaic ArcadeVGA 2 (R9250 AGP) on Windows XP. The monitor is a Billabs BL27CB0P. I need help setting up a monitor preset.

I could find some basic original specs (note the maximum 1024x768 resolution):
https://www.8-line.com/WebsiteInfo/Bil's%20Magento%20Site/billabs_old/bl27cb0p.htm

I also found this thread where the guy says he got the monitor working, but not with what preset:
http://forum.arcadecontrols.com/index.php/topic,135823.msg1454180.html#msg1454180

One last thing, do I need to run VMMaker and CRT Emudriver if I am using an ArcadeVGA? I assume I do not; I only need to modify the groovymame.ini to have:

Code: [Select]
lock_system_modes         0
refresh_dont_care         1

Thanks for all your help. It's been a while...

EDIT: Solution is here.
« Last Edit: August 31, 2016, 02:14:12 pm by the_77x42 »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7461
  • Last login:May 23, 2025, 06:07:25 am
  • Quote me with care
Re: Billabs BL27CB0P
« Reply #1 on: March 08, 2016, 11:45:46 am »
You can use the standard tri-sync preset "arcade_15_25_31", this one will be safe enough.

That AVGA will probably be supported by CRT Emudriver 1.2: http://geedorah.com/eiusdemmodi/forum/viewtopic.php?id=65

Although you install 1.2, make sure you use the new 2.0 tools for mode generation (VMMaker, Arcade OSD), etc. which are GroovyMAME-ready: http://geedorah.com/eiusdemmodi/forum/viewtopic.php?id=295

I'm recommending this because GM will work much better using those drivers, you won't need the other options you posted at all if you use CRT Emudriver. It won't fix interlaced flicker anyway.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

the_77x42

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 63
  • Last login:June 16, 2025, 05:13:30 pm
Re: Billabs BL27CB0P
« Reply #2 on: March 10, 2016, 05:38:43 am »
What are the advantages of using GroovyMAME if I already have an ArcadeVGA and a monitor that can display all the game resolutions natively? Is there something that GroovyMAME can do that the AVGA cannot?

The reason I ask is because setting up a specific mode that can potentially damage my monitor seems like a risk. Does using a generic multisync profile provide any benefit over what I already have?

jtslade

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 747
  • Last login:February 13, 2025, 10:06:51 pm
  • Keep it looking originallish!
Re: Billabs BL27CB0P
« Reply #3 on: March 13, 2016, 09:19:12 am »
GroovyMame and atom15 and any cheap ATI 4000 series card / you want one that will do the lower dot clocks..

Is awesome..

I had an Arcade VGA 3000 in my cab and the 30 or so resolutions its supports is never enough and even with GroovyMame which did a great job of matching resolutions and timing it was always having to compromise..

Now the games all run perfect native red. Perfect timing and frame rates. If it's off it's by like .001 or something crazy small like that..

I'm never going back


Sent from my iPhone using Tapatalk
Ms. Pacman Original Cocktail with Non destructive mod to Groovy Arcade Linux with All 4way Vertical Cocktail capable 2 button or less games.


Neo Geo MVS Mame Cab Running Hyperspin, 25" Nanao Arcade Monitor, Mini-pac, ATI Radeon HD 4850 (ATOM-15), IL 8 Way Euro-Sticks from Paradise Arcade, Win XP 64bit, and tons of other junk.


the_77x42

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 63
  • Last login:June 16, 2025, 05:13:30 pm
Re: Billabs BL27CB0P
« Reply #4 on: August 31, 2016, 02:07:07 pm »
Wow, was this ever time consuming, but i finally have everything working. I decided to scrap the ArcadeVGA (9250) and go for something slightly more powerful, a 9600. All of the following does in fact work with the ArcadeVGA though.

Since I'm using Windows XP, I downloaded CRT Emudriver 1.2b based on Catalyst 6.5 XP-32.

After cleaning out all my old ATI drivers using a small utility and following the directions on this site, I was finally able to install CRT Emudriver. It went fairly painless.

I then downloaded CRT Tools 2.0 beta 8 (VMMaker & Arcade OSD). Running this new VMMaker was a lot easier than the old one.

I created a custom monitor preset based on the D9800:
Code: [Select]
monitor "bl27cb0p", "Billabs BL27CB0P", "4:3"
        crt_range0 15250-18000, 47-90, 2.187, 4.688, 6.719, 0.190, 0.191, 1.018, 0, 0, 224, 288, 448, 576
        crt_range1 18001-19000, 47-90, 2.187, 4.688, 6.719, 0.140, 0.191, 0.950, 0, 0, 288, 320, 0, 0
        crt_range2 20501-29000, 47-90, 2.910, 3.000, 4.440, 0.451, 0.164, 1.048, 0, 0, 320, 384, 0, 0
        crt_range3 29001-32000, 47-90, 0.636, 3.813, 1.906, 0.318, 0.064, 1.048, 0, 0, 384, 480, 0, 0
        crt_range4 32001-34000, 47-90, 0.636, 3.813, 1.906, 0.020, 0.106, 0.607, 0, 0, 480, 576, 0, 0
        crt_range5 34001-38000, 47-90, 1.000, 3.200, 2.200, 0.020, 0.106, 0.607, 0, 0, 576, 600, 0, 0

You'll note that this preset doesn't accommodate the monitor's maximum resolution of 1024x768. I don't have enough knowledge of monitor timings to figure out how to get it to work properly. I do have an email in to Wei Ya to see if they have any technical documentation available. The BL27CB0P is apparently the US version of a Wei Ya monitor. If I ever get that information, I'll update the preset.

I generated 120 modes and installed them into the driver.

I added a couple games to mame_favourites.ini to make sure their tricky resolutions would be available. Those being:

Code: [Select]
mk   # Mortal Kombat
mvsc # Marvel vs. Capcom
narc # Narc

My mame.ini file looks like this:

Code: [Select]
#
# CORE CONFIGURATION OPTIONS
#
readconfig                1
writeconfig               0

#
# CORE SEARCH PATH OPTIONS
#
rompath                   roms
hashpath                  hash
samplepath                samples
artpath                   artwork
ctrlrpath                 ctrlr
inipath                   ini
fontpath                  .
cheatpath                 cheat
crosshairpath             crosshair
pluginspath               plugins
languagepath              language

#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory             cfg
nvram_directory           nvram
input_directory           inp
state_directory           sta
snapshot_directory        snap
diff_directory            diff
comment_directory         comments

#
# CORE STATE/PLAYBACK OPTIONS
#
state                     
autosave                  0
playback                 
record                   
record_timecode           0
exit_after_playback       0
mngwrite                 
aviwrite                 
wavwrite                 
snapname                  %g/%i
snapsize                  auto
snapview                  internal
snapbilinear              1
statename                 %g
burnin                    0

#
# CORE PERFORMANCE OPTIONS
#
autoframeskip             0
frameskip                 0
seconds_to_run            0
throttle                  1
syncrefresh               0
autosync                  0
sleep                     1
speed                     1.0
refreshspeed              0

#
# CORE RENDER OPTIONS
#
keepaspect                1
unevenstretch             0
unevenstretchx            0
intoverscan               0
intscalex                 0
intscaley                 0

#
# CORE ROTATION OPTIONS
#
rotate                    1
ror                       0
rol                       0
autoror                   0
autorol                   0
flipx                     0
flipy                     0

#
# CORE ARTWORK OPTIONS
#
artwork_crop              1
use_backdrops             1
use_overlays              1
use_bezels                0
use_cpanels               0
use_marquees              0

#
# CORE SCREEN OPTIONS
#
brightness                1.0
contrast                  1.0
gamma                     1.0
pause_brightness          0.65
effect                    none

#
# CORE VECTOR OPTIONS
#
beam_width_min            1.0
beam_width_max            1.0
beam_intensity_weight     0
flicker                   0

#
# CORE SOUND OPTIONS
#
samplerate                40000
samples                   1
volume                    0

#
# CORE INPUT OPTIONS
#
coin_lockout              1
ctrlr                     
mouse                     0
joystick                  0
lightgun                  0
multikeyboard             0
multimouse                0
steadykey                 0
ui_active                 0
offscreen_reload          0
joystick_map              auto
joystick_deadzone         0.3
joystick_saturation       0.85
natural                   0
joystick_contradictory    0
coin_impulse              0

#
# CORE INPUT AUTOMATIC ENABLE OPTIONS
#
paddle_device             keyboard
adstick_device            keyboard
pedal_device              keyboard
dial_device               keyboard
trackball_device          keyboard
lightgun_device           keyboard
positional_device         keyboard
mouse_device              mouse

#
# CORE DEBUGGING OPTIONS
#
verbose                   0
log                       0
oslog                     0
debug                     0
update_in_pause           0
debugscript               

#
# CORE COMM OPTIONS
#
comm_localhost            0.0.0.0
comm_localport            15112
comm_remotehost           127.0.0.1
comm_remoteport           15112

#
# CORE MISC OPTIONS
#
drc                       1
drc_use_c                 0
drc_log_uml               0
drc_log_native            0
bios                     
cheat                     0
skip_gameinfo             1
uifont                    uismall.bdf
ui                        cabinet
ramsize                   
confirm_quit              1
ui_mouse                  0
autoboot_command         
autoboot_delay            0
autoboot_script           
console                   0
plugins                   1
plugin                   
noplugin                 
language                  English

#
# CORE SWITCHRES OPTIONS
#
modeline_generation       1
monitor                   custom
orientation               horizontal
connector                 auto
interlace                 1
doublescan                1
super_width               2560
changeres                 1
powerstrip                0
lock_system_modes         4
lock_unsupported_modes    1
refresh_dont_care         0
dotclock_min              0
sync_refresh_tolerance    2.0
frame_delay               0
vsync_offset              0
black_frame_insertion     0
modeline                  auto
ps_timing                 auto
lcd_range                 auto
crt_range0                15250-18000, 47.00-90.00, 2.187, 4.688, 6.719, 0.190, 0.191, 1.018, 0, 0, 224, 288, 448, 576
crt_range1                18001-19000, 47.00-90.00, 2.187, 4.688, 6.719, 0.140, 0.191, 0.950, 0, 0, 288, 320, 0, 0
crt_range2                20501-29000, 47.00-90.00, 2.910, 3.000, 4.440, 0.451, 0.164, 1.048, 0, 0, 320, 384, 0, 0
crt_range3                29001-32000, 47.00-90.00, 0.636, 3.813, 1.906, 0.318, 0.064, 1.048, 0, 0, 384, 480, 0, 0
crt_range4                32001-34000, 47.00-90.00, 0.636, 3.813, 1.906, 0.020, 0.106, 0.607, 0, 0, 480, 576, 0, 0
crt_range5                34001-38000, 47.00-90.00, 1.000, 3.200, 2.200, 0.020, 0.106, 0.607, 0, 0, 576, 600, 0, 0
crt_range6                auto
crt_range7                auto
crt_range8                auto
crt_range9                auto

#
# OSD KEYBOARD MAPPING OPTIONS
#
uimodekey                 SCRLOCK

#
# OSD FONT OPTIONS
#
uifontprovider            auto

#
# OSD OUTPUT OPTIONS
#
output                    auto

#
# OSD INPUT OPTIONS
#
keyboardprovider          auto
mouseprovider             auto
lightgunprovider          auto
joystickprovider          auto

#
# OSD DEBUGGING OPTIONS
#
debugger                  auto
debugger_font             auto
debugger_font_size        0
watchdog                  0

#
# OSD PERFORMANCE OPTIONS
#
numprocessors             auto
bench                     0

#
# OSD VIDEO OPTIONS
#
video                     auto
numscreens                1
window                    0
maximize                  1
waitvsync                 0

#
# OSD PER-WINDOW VIDEO OPTIONS
#
screen                    auto
aspect                    4:3
resolution                auto
view                      auto
screen0                   auto
aspect0                   auto
resolution0               auto
view0                     auto
screen1                   auto
aspect1                   auto
resolution1               auto
view1                     auto
screen2                   auto
aspect2                   auto
resolution2               auto
view2                     auto
screen3                   auto
aspect3                   auto
resolution3               auto
view3                     auto

#
# OSD FULL SCREEN OPTIONS
#
switchres                 1

#
# OSD ACCELERATED VIDEO OPTIONS
#
filter                    0
prescale                  0

#
# OpenGL-SPECIFIC OPTIONS
#
gl_forcepow2texture       0
gl_notexturerect          0
gl_vbo                    1
gl_pbo                    1
gl_glsl                   0
gl_glsl_filter            1
glsl_shader_mame0         none
glsl_shader_mame1         none
glsl_shader_mame2         none
glsl_shader_mame3         none
glsl_shader_mame4         none
glsl_shader_mame5         none
glsl_shader_mame6         none
glsl_shader_mame7         none
glsl_shader_mame8         none
glsl_shader_mame9         none
glsl_shader_screen0       none
glsl_shader_screen1       none
glsl_shader_screen2       none
glsl_shader_screen3       none
glsl_shader_screen4       none
glsl_shader_screen5       none
glsl_shader_screen6       none
glsl_shader_screen7       none
glsl_shader_screen8       none
glsl_shader_screen9       none

#
# OSD SOUND OPTIONS
#
sound                     auto
audio_latency             2.0

#
# BGFX POST-PROCESSING OPTIONS
#
bgfx_path                 bgfx
bgfx_backend              auto
bgfx_debug                0
bgfx_screen_chains        default
bgfx_shadow_mask          slot-mask.png
bgfx_avi_name             auto

#
# WINDOWS PERFORMANCE OPTIONS
#
priority                  1
profile                   0

#
# WINDOWS VIDEO OPTIONS
#
menu                      0

#
# DIRECT3D POST-PROCESSING OPTIONS
#
hlslpath                  hlsl
hlsl_enable               0
hlsl_oversampling         0
hlsl_write                auto
hlsl_snap_width           2048
hlsl_snap_height          1536
shadow_mask_tile_mode     0
shadow_mask_alpha         0.0
shadow_mask_texture       shadow-mask.png
shadow_mask_x_count       6
shadow_mask_y_count       4
shadow_mask_usize         0.1875
shadow_mask_vsize         0.25
shadow_mask_uoffset       0.0
shadow_mask_voffset       0.0
distortion                0.0
cubic_distortion          0.0
distort_corner            0.0
round_corner              0.0
smooth_border             0.0
reflection                0.0
vignetting                0.0
scanline_alpha            0.0
scanline_size             1.0
scanline_height           1.0
scanline_variation        1.0
scanline_bright_scale     1.0
scanline_bright_offset    0.0
scanline_jitter           0.0
hum_bar_alpha             0.0
defocus                   0.0,0.0
converge_x                0.0,0.0,0.0
converge_y                0.0,0.0,0.0
radial_converge_x         0.0,0.0,0.0
radial_converge_y         0.0,0.0,0.0
red_ratio                 1.0,0.0,0.0
grn_ratio                 0.0,1.0,0.0
blu_ratio                 0.0,0.0,1.0
saturation                1.0
offset                    0.0,0.0,0.0
scale                     1.0,1.0,1.0
power                     1.0,1.0,1.0
floor                     0.0,0.0,0.0
phosphor_life             0.0,0.0,0.0

#
# NTSC POST-PROCESSING OPTIONS
#
yiq_enable                0
yiq_jitter                0.0
yiq_cc                    3.57954545
yiq_a                     0.5
yiq_b                     0.5
yiq_o                     0.0
yiq_p                     1.0
yiq_n                     1.0
yiq_y                     6.0
yiq_i                     1.2
yiq_q                     0.6
yiq_scan_time             52.6
yiq_phase_count           2

#
# VECTOR POST-PROCESSING OPTIONS
#
vector_beam_smooth        0.0
vector_length_scale       0.5
vector_length_ratio       0.5

#
# BLOOM POST-PROCESSING OPTIONS
#
bloom_blend_mode          0
bloom_scale               0.0
bloom_overdrive           1.0,1.0,1.0
bloom_lvl0_weight         1.0
bloom_lvl1_weight         0.64
bloom_lvl2_weight         0.32
bloom_lvl3_weight         0.16
bloom_lvl4_weight         0.08
bloom_lvl5_weight         0.06
bloom_lvl6_weight         0.04
bloom_lvl7_weight         0.02
bloom_lvl8_weight         0.01

#
# FULL SCREEN OPTIONS
#
triplebuffer              1
full_screen_brightness    1.0
full_screen_contrast      1.0
full_screen_gamma         1.0

#
# INPUT DEVICE OPTIONS
#
global_inputs             0
dual_lightgun             0

#
# MISC
#
disable_nagscreen_patch   0
disable_loading_patch     0

The MISC section at the bottom doesn't seem to do much. I'm not sure how to get rid of the nags, but I did specify uismall.bdf as my MAME font since it's so clean.

One more great utility I used was MAME XML Cleaner (I wrote my own Python script that does the job). It will shrink that massive mame.xml file down to less than 10mb so any parsers or frontends will load much, much quicker.

I hope this helps out the next person with this monitor. The preset still requires more work if I ever get the technical details. It would be nice if the specified bands went up from 15 all the way to 48 kHz. In time. For now, the games look absolutely fantastic and there is no tearing at all.
« Last Edit: August 03, 2018, 01:41:27 am by the_77x42 »

the_77x42

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 63
  • Last login:June 16, 2025, 05:13:30 pm
Re: Billabs BL27CB0P
« Reply #5 on: September 02, 2016, 02:13:14 am »
Just an update: I've noticed a substantial speed improvement setting:

In mame.ini:
Code: [Select]
frame_delay               0
This was needed to play Narc at all.

the_77x42

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 63
  • Last login:June 16, 2025, 05:13:30 pm
Re: Billabs BL27CB0P
« Reply #6 on: September 10, 2016, 10:30:22 am »
Now that I have everything working rather well, it's time to break it. How would I go about creating custom monitor specs? Thanks!

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7461
  • Last login:May 23, 2025, 06:07:25 am
  • Quote me with care
Re: Billabs BL27CB0P
« Reply #7 on: September 11, 2016, 02:34:11 pm »
Focus on something that doesn't work as intended and start from there.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi