Skip to content

Commit 72ae256

Browse files
committed
SDL client: implement support for OGG files
1 parent ae9d3bb commit 72ae256

File tree

243 files changed

+307
-5
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

243 files changed

+307
-5
lines changed

SDL_mixer.dll

6.5 KB
Binary file not shown.

changes.txt

+1
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ PWMAngband:
4949
maximum number of fonts to 60
5050
- Simplify food description
5151
- Simplify Dragon's Breath description
52+
- SDL client: implement support for OGG files
5253

5354
Gameplay changes
5455
----------------

lib/sounds/Makefile

+78
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,84 @@ MKPATH=../../mk/
22
include $(MKPATH)buildsys.mk
33

44
DATA = sound.cfg \
5+
amb_bell_metal1.ogg mco_scurry_dry.ogg plm_glass_smashing.ogg \
6+
amb_bell_metal2.ogg mco_shake_roll.ogg plm_jar_ding.ogg \
7+
amb_bell_tibet1.ogg mco_snarl_short.ogg plm_levelup.ogg \
8+
amb_bell_tibet2.ogg mco_spray_long.ogg plm_lock_case.ogg \
9+
amb_bell_tibet3.ogg mco_squish_hit.ogg plm_lock_distant.ogg \
10+
amb_deep.ogg mco_squish_snap.ogg plm_metal_clank.ogg \
11+
amb_door_doom.ogg mco_strange_music.ogg plm_metal_sharpen.ogg \
12+
amb_door_iron.ogg mco_strange_thwoink.ogg plm_open_case.ogg \
13+
amb_dungeon_echo.ogg mco_thoing_backwards.ogg plm_spell1.ogg \
14+
amb_dungeon_echowet.ogg mco_thoing_deep.ogg plm_spell2.ogg \
15+
amb_gong_chinese.ogg mco_thud_crash.ogg plm_spell3.ogg \
16+
amb_gong_low.ogg mco_tube_hit.ogg plm_use_staff.ogg \
17+
amb_gong_strike.ogg plc_bell_warn.ogg plm_wood_thud.ogg \
18+
amb_gong_undertone.ogg plc_die_laugh.ogg plm_zap_rod.ogg \
19+
amb_guitar_chord.ogg plc_hit_anvil2.ogg pls_bell_bowl.ogg \
20+
amb_melkor.ogg plc_hit_anvil.ogg pls_bell_chime_new.ogg \
21+
amb_morgoth.ogg plc_hit_arrow.ogg pls_bell_glass.ogg \
22+
amb_pulse_low.ogg plc_hit_body.ogg pls_bell_hibell_soft.ogg \
23+
amb_sauron.ogg plc_hit_critical.ogg pls_bell_mute.ogg \
24+
amb_senya.ogg plc_hit_groan.ogg pls_bell_sustain.ogg \
25+
amb_thunder_rain.ogg plc_hit_grunt2.ogg pls_breathe_in.ogg \
26+
amb_thunder_roll.ogg plc_hit_grunt.ogg pls_man_argoh.ogg \
27+
amb_xakaze.ogg plc_hit_hay.ogg pls_man_gulp_new.ogg \
28+
enter_pit.ogg plc_miss_arrow2.ogg pls_man_oooh.ogg \
29+
id_bad_aww.ogg plc_miss_arrow.ogg pls_man_scream2.ogg \
30+
id_bad_dang.ogg plc_miss_swish.ogg pls_man_sigh.ogg \
31+
id_bad_hmm.ogg plm_aim_wand.ogg pls_man_sniff.ogg \
32+
id_bad_hmph.ogg plm_bang_ceramic.ogg pls_man_sob.ogg \
33+
id_bad_ohh.ogg plm_bang_dumpster.ogg pls_man_spit.ogg \
34+
id_ego_whoa.ogg plm_bang_metal.ogg pls_man_ugh.ogg \
35+
id_ego_woohoo.ogg plm_book_pageturn.ogg pls_man_yell.ogg \
36+
id_ego_yeah2.ogg plm_bottle_clinks.ogg pls_tone_blurk.ogg \
37+
id_ego_yeah.ogg plm_break_canister.ogg pls_tone_clave6.ogg \
38+
id_ego_yes.ogg plm_break_glass2.ogg pls_tone_clavelo8.ogg \
39+
id_good_hey2.ogg plm_break_glass.ogg pls_tone_conk.ogg \
40+
id_good_hey.ogg plm_break_plates.ogg pls_tone_elec.ogg \
41+
id_good_hmm.ogg plm_break_shatter.ogg pls_tone_goblet.ogg \
42+
id_good_huh.ogg plm_break_smash.ogg pls_tone_guiro.ogg \
43+
id_good_ooh.ogg plm_break_wood.ogg pls_tone_headstock.ogg \
44+
id_good_ooo.ogg plm_cabinet_open.ogg pls_tone_scrape.ogg \
45+
id_good_wow.ogg plm_cabinet_shut.ogg pls_tone_stick.ogg \
46+
mco_attack_breath.ogg plm_chain_light.ogg sto_bell_desk.ogg \
47+
mco_attack_spray.ogg plm_chest_latch.ogg sto_bell_dingaling.ogg \
48+
mco_bite_chew.ogg plm_chest_unlatch.ogg sto_bell_ding.ogg \
49+
mco_bite_chomp.ogg plm_chimes_jangle.ogg sto_bell_jingles.ogg \
50+
mco_bite_dainty.ogg plm_click_dry.ogg sto_bell_register1.ogg \
51+
mco_bite_gnash.ogg plm_click_switch2.ogg sto_bell_register2.ogg \
52+
mco_bite_hard.ogg plm_click_switch3.ogg sto_bell_ringing.ogg \
53+
mco_bite_long.ogg plm_click_switch.ogg sto_bell_shop.ogg \
54+
mco_bite_munch.ogg plm_click_wood.ogg sto_coins_countertop.ogg \
55+
mco_bite_regular.ogg plm_close_hatch.ogg sto_man_haha.ogg \
56+
mco_bite_short.ogg plm_coins_dump.ogg sto_man_hey.ogg \
57+
mco_bite_small.ogg plm_coins_light.ogg sto_man_whoohaha.ogg \
58+
mco_bite_soft.ogg plm_coins_pour.ogg sum_angel_song.ogg \
59+
mco_card_shuffle.ogg plm_coins_shake.ogg sum_bell_crystal.ogg \
60+
mco_castanet_trill.ogg plm_cork_pop.ogg sum_bell_hand.ogg \
61+
mco_ceramic_trill.ogg plm_cork_squeak.ogg sum_bell_tone.ogg \
62+
mco_click_vibra.ogg plm_door_bolt.ogg sum_chime_jangle.ogg \
63+
mco_creature_choking.ogg plm_door_creak.ogg sum_ghost_moan.ogg \
64+
mco_creature_groan.ogg plm_door_creakshut.ogg sum_ghost_oooo.ogg \
65+
mco_creature_yelp.ogg plm_door_dungeon.ogg sum_ghost_wail.ogg \
66+
mco_cuica_rubbing.ogg plm_door_echolock.ogg sum_gong_temple.ogg \
67+
mco_dino_low.ogg plm_door_entrance.ogg sum_laugh_evil2.ogg \
68+
mco_dino_slur.ogg plm_door_knob.ogg sum_lion_growl.ogg \
69+
mco_dino_talk.ogg plm_door_latch.ogg sum_piano_scrape.ogg \
70+
mco_dino_yawn.ogg plm_door_opening.ogg wild_deepwater.ogg \
71+
mco_dub_wobble.ogg plm_door_open.ogg wild_desert.ogg \
72+
mco_frog_trill.ogg plm_door_rusty.ogg wild_glacier.ogg \
73+
mco_hit_whip.ogg plm_door_shut.ogg wild_grass.ogg \
74+
mco_howl_croak.ogg plm_door_slam.ogg wild_hill.ogg \
75+
mco_howl_deep.ogg plm_door_squeaky.ogg wild_mountain.ogg \
76+
mco_howl_distressed.ogg plm_door_wooden.ogg wild_river.ogg \
77+
mco_howl_high.ogg plm_drop_boot.ogg wild_shore.ogg \
78+
mco_howl_long.ogg plm_eat_bite.ogg wild_swamp.ogg \
79+
mco_liquid_squirt.ogg plm_floor_creak2.ogg wild_volcano.ogg \
80+
mco_man_mumble.ogg plm_floor_creak.ogg wild_waste.ogg \
81+
mco_mouse_squeaks.ogg plm_glass_breaking.ogg wild_wood.ogg \
82+
mco_rubber_thud.ogg plm_glass_break.ogg \
583
amb_bell_metal1.mp3 mco_scurry_dry.mp3 plm_glass_smashing.mp3 \
684
amb_bell_metal2.mp3 mco_shake_roll.mp3 plm_jar_ding.mp3 \
785
amb_bell_tibet1.mp3 mco_snarl_short.mp3 plm_levelup.mp3 \

lib/sounds/amb_bell_metal1.ogg

29.1 KB
Binary file not shown.

lib/sounds/amb_bell_metal2.ogg

18.8 KB
Binary file not shown.

lib/sounds/amb_bell_tibet1.ogg

37.3 KB
Binary file not shown.

lib/sounds/amb_bell_tibet2.ogg

45.6 KB
Binary file not shown.

lib/sounds/amb_bell_tibet3.ogg

39 KB
Binary file not shown.

lib/sounds/amb_deep.ogg

115 KB
Binary file not shown.

lib/sounds/amb_door_doom.ogg

17 KB
Binary file not shown.

lib/sounds/amb_door_iron.ogg

32.3 KB
Binary file not shown.

lib/sounds/amb_dungeon_echo.ogg

25.6 KB
Binary file not shown.

lib/sounds/amb_dungeon_echowet.ogg

45.1 KB
Binary file not shown.

lib/sounds/amb_gong_chinese.ogg

57.8 KB
Binary file not shown.

lib/sounds/amb_gong_low.ogg

33.8 KB
Binary file not shown.

lib/sounds/amb_gong_strike.ogg

30.7 KB
Binary file not shown.

lib/sounds/amb_gong_undertone.ogg

66.4 KB
Binary file not shown.

lib/sounds/amb_guitar_chord.ogg

45.2 KB
Binary file not shown.

lib/sounds/amb_melkor.ogg

133 KB
Binary file not shown.

lib/sounds/amb_morgoth.ogg

133 KB
Binary file not shown.

lib/sounds/amb_pulse_low.ogg

38.1 KB
Binary file not shown.

lib/sounds/amb_sauron.ogg

92.4 KB
Binary file not shown.

lib/sounds/amb_senya.ogg

128 KB
Binary file not shown.

lib/sounds/amb_thunder_rain.ogg

91.3 KB
Binary file not shown.

lib/sounds/amb_thunder_roll.ogg

52 KB
Binary file not shown.

lib/sounds/amb_xakaze.ogg

174 KB
Binary file not shown.

lib/sounds/enter_pit.ogg

9.71 KB
Binary file not shown.

lib/sounds/id_bad_aww.ogg

14.7 KB
Binary file not shown.

lib/sounds/id_bad_dang.ogg

14.9 KB
Binary file not shown.

lib/sounds/id_bad_hmm.ogg

12.8 KB
Binary file not shown.

lib/sounds/id_bad_hmph.ogg

13.2 KB
Binary file not shown.

lib/sounds/id_bad_ohh.ogg

14.5 KB
Binary file not shown.

lib/sounds/id_ego_whoa.ogg

12 KB
Binary file not shown.

lib/sounds/id_ego_woohoo.ogg

14.5 KB
Binary file not shown.

lib/sounds/id_ego_yeah.ogg

13.7 KB
Binary file not shown.

lib/sounds/id_ego_yeah2.ogg

17 KB
Binary file not shown.

lib/sounds/id_ego_yes.ogg

16 KB
Binary file not shown.

lib/sounds/id_good_hey.ogg

11.1 KB
Binary file not shown.

lib/sounds/id_good_hey2.ogg

11.1 KB
Binary file not shown.

lib/sounds/id_good_hmm.ogg

11.3 KB
Binary file not shown.

lib/sounds/id_good_huh.ogg

10.8 KB
Binary file not shown.

lib/sounds/id_good_ooh.ogg

11.7 KB
Binary file not shown.

lib/sounds/id_good_ooo.ogg

18.1 KB
Binary file not shown.

lib/sounds/id_good_wow.ogg

12.7 KB
Binary file not shown.

lib/sounds/mco_attack_breath.ogg

12 KB
Binary file not shown.

lib/sounds/mco_attack_spray.ogg

19.6 KB
Binary file not shown.

lib/sounds/mco_bite_chew.ogg

19.5 KB
Binary file not shown.

lib/sounds/mco_bite_chomp.ogg

8.22 KB
Binary file not shown.

lib/sounds/mco_bite_dainty.ogg

9.35 KB
Binary file not shown.

lib/sounds/mco_bite_gnash.ogg

13.3 KB
Binary file not shown.

lib/sounds/mco_bite_hard.ogg

10.2 KB
Binary file not shown.

lib/sounds/mco_bite_long.ogg

14 KB
Binary file not shown.

lib/sounds/mco_bite_munch.ogg

7.07 KB
Binary file not shown.

lib/sounds/mco_bite_regular.ogg

12.2 KB
Binary file not shown.

lib/sounds/mco_bite_short.ogg

7.8 KB
Binary file not shown.

lib/sounds/mco_bite_small.ogg

8.12 KB
Binary file not shown.

lib/sounds/mco_bite_soft.ogg

9.37 KB
Binary file not shown.

lib/sounds/mco_card_shuffle.ogg

9.44 KB
Binary file not shown.

lib/sounds/mco_castanet_trill.ogg

6.29 KB
Binary file not shown.

lib/sounds/mco_ceramic_trill.ogg

10.1 KB
Binary file not shown.

lib/sounds/mco_click_vibra.ogg

6.83 KB
Binary file not shown.

lib/sounds/mco_creature_choking.ogg

10.6 KB
Binary file not shown.

lib/sounds/mco_creature_groan.ogg

15.6 KB
Binary file not shown.

lib/sounds/mco_creature_yelp.ogg

6.16 KB
Binary file not shown.

lib/sounds/mco_cuica_rubbing.ogg

6.29 KB
Binary file not shown.

lib/sounds/mco_dino_low.ogg

12.8 KB
Binary file not shown.

lib/sounds/mco_dino_slur.ogg

15.6 KB
Binary file not shown.

lib/sounds/mco_dino_talk.ogg

21 KB
Binary file not shown.

lib/sounds/mco_dino_yawn.ogg

13.5 KB
Binary file not shown.

lib/sounds/mco_dub_wobble.ogg

7.29 KB
Binary file not shown.

lib/sounds/mco_frog_trill.ogg

8.04 KB
Binary file not shown.

lib/sounds/mco_hit_whip.ogg

6.66 KB
Binary file not shown.

lib/sounds/mco_howl_croak.ogg

7.52 KB
Binary file not shown.

lib/sounds/mco_howl_deep.ogg

9.85 KB
Binary file not shown.

lib/sounds/mco_howl_distressed.ogg

9.93 KB
Binary file not shown.

lib/sounds/mco_howl_high.ogg

8.98 KB
Binary file not shown.

lib/sounds/mco_howl_long.ogg

17.1 KB
Binary file not shown.

lib/sounds/mco_liquid_squirt.ogg

8.77 KB
Binary file not shown.

lib/sounds/mco_man_mumble.ogg

19.3 KB
Binary file not shown.

lib/sounds/mco_mouse_squeaks.ogg

9.28 KB
Binary file not shown.

lib/sounds/mco_rubber_thud.ogg

7.68 KB
Binary file not shown.

lib/sounds/mco_scurry_dry.ogg

6.61 KB
Binary file not shown.

lib/sounds/mco_shake_roll.ogg

11.1 KB
Binary file not shown.

lib/sounds/mco_snarl_short.ogg

8.83 KB
Binary file not shown.

lib/sounds/mco_spray_long.ogg

17.6 KB
Binary file not shown.

lib/sounds/mco_squish_hit.ogg

9.58 KB
Binary file not shown.

lib/sounds/mco_squish_snap.ogg

9.35 KB
Binary file not shown.

lib/sounds/mco_strange_music.ogg

22.9 KB
Binary file not shown.

lib/sounds/mco_strange_thwoink.ogg

7.59 KB
Binary file not shown.

lib/sounds/mco_thoing_backwards.ogg

6.97 KB
Binary file not shown.

lib/sounds/mco_thoing_deep.ogg

6.97 KB
Binary file not shown.

lib/sounds/mco_thud_crash.ogg

7 KB
Binary file not shown.

lib/sounds/mco_tube_hit.ogg

5.01 KB
Binary file not shown.

lib/sounds/plc_bell_warn.ogg

7.2 KB
Binary file not shown.

lib/sounds/plc_die_laugh.ogg

29.3 KB
Binary file not shown.

lib/sounds/plc_hit_anvil.ogg

7.07 KB
Binary file not shown.

lib/sounds/plc_hit_anvil2.ogg

11.5 KB
Binary file not shown.

lib/sounds/plc_hit_arrow.ogg

11.2 KB
Binary file not shown.

lib/sounds/plc_hit_body.ogg

6.46 KB
Binary file not shown.

lib/sounds/plc_hit_critical.ogg

5.46 KB
Binary file not shown.

lib/sounds/plc_hit_groan.ogg

12.3 KB
Binary file not shown.

lib/sounds/plc_hit_grunt.ogg

11.2 KB
Binary file not shown.

lib/sounds/plc_hit_grunt2.ogg

11.1 KB
Binary file not shown.

lib/sounds/plc_hit_hay.ogg

7.64 KB
Binary file not shown.

lib/sounds/plc_miss_arrow.ogg

7.09 KB
Binary file not shown.

lib/sounds/plc_miss_arrow2.ogg

6.18 KB
Binary file not shown.

lib/sounds/plc_miss_swish.ogg

4.87 KB
Binary file not shown.

lib/sounds/plm_aim_wand.ogg

23.1 KB
Binary file not shown.

lib/sounds/plm_bang_ceramic.ogg

8.52 KB
Binary file not shown.

lib/sounds/plm_bang_dumpster.ogg

13.9 KB
Binary file not shown.

lib/sounds/plm_bang_metal.ogg

8.48 KB
Binary file not shown.

lib/sounds/plm_book_pageturn.ogg

22.9 KB
Binary file not shown.

lib/sounds/plm_bottle_clinks.ogg

7.85 KB
Binary file not shown.

lib/sounds/plm_break_canister.ogg

11 KB
Binary file not shown.

lib/sounds/plm_break_glass.ogg

16.7 KB
Binary file not shown.

lib/sounds/plm_break_glass2.ogg

13.2 KB
Binary file not shown.

lib/sounds/plm_break_plates.ogg

15.3 KB
Binary file not shown.

lib/sounds/plm_break_shatter.ogg

15.4 KB
Binary file not shown.

lib/sounds/plm_break_smash.ogg

13.2 KB
Binary file not shown.

lib/sounds/plm_break_wood.ogg

10.6 KB
Binary file not shown.

lib/sounds/plm_cabinet_open.ogg

8.71 KB
Binary file not shown.

lib/sounds/plm_cabinet_shut.ogg

7.65 KB
Binary file not shown.

lib/sounds/plm_chain_light.ogg

12 KB
Binary file not shown.

lib/sounds/plm_chest_latch.ogg

16.5 KB
Binary file not shown.

lib/sounds/plm_chest_unlatch.ogg

20.3 KB
Binary file not shown.

lib/sounds/plm_chimes_jangle.ogg

9.59 KB
Binary file not shown.

lib/sounds/plm_click_dry.ogg

5.28 KB
Binary file not shown.

lib/sounds/plm_click_switch.ogg

4.71 KB
Binary file not shown.

lib/sounds/plm_click_switch2.ogg

5.57 KB
Binary file not shown.

lib/sounds/plm_click_switch3.ogg

7.5 KB
Binary file not shown.

lib/sounds/plm_click_wood.ogg

5.26 KB
Binary file not shown.

lib/sounds/plm_close_hatch.ogg

17.6 KB
Binary file not shown.

lib/sounds/plm_coins_dump.ogg

23.4 KB
Binary file not shown.

lib/sounds/plm_coins_light.ogg

6.21 KB
Binary file not shown.

lib/sounds/plm_coins_pour.ogg

14.6 KB
Binary file not shown.

lib/sounds/plm_coins_shake.ogg

8.73 KB
Binary file not shown.

lib/sounds/plm_cork_pop.ogg

5.8 KB
Binary file not shown.

lib/sounds/plm_cork_squeak.ogg

5.35 KB
Binary file not shown.

lib/sounds/plm_door_bolt.ogg

6.91 KB
Binary file not shown.

lib/sounds/plm_door_creak.ogg

26.9 KB
Binary file not shown.

lib/sounds/plm_door_creakshut.ogg

22.5 KB
Binary file not shown.

lib/sounds/plm_door_dungeon.ogg

24.5 KB
Binary file not shown.

lib/sounds/plm_door_echolock.ogg

12.3 KB
Binary file not shown.

lib/sounds/plm_door_entrance.ogg

17.7 KB
Binary file not shown.

lib/sounds/plm_door_knob.ogg

6.41 KB
Binary file not shown.

lib/sounds/plm_door_latch.ogg

7.5 KB
Binary file not shown.

lib/sounds/plm_door_open.ogg

19.9 KB
Binary file not shown.

lib/sounds/plm_door_opening.ogg

14.8 KB
Binary file not shown.

lib/sounds/plm_door_rusty.ogg

13.9 KB
Binary file not shown.

lib/sounds/plm_door_shut.ogg

8.93 KB
Binary file not shown.

lib/sounds/plm_door_slam.ogg

15 KB
Binary file not shown.

lib/sounds/plm_door_squeaky.ogg

34.9 KB
Binary file not shown.

lib/sounds/plm_door_wooden.ogg

10.9 KB
Binary file not shown.

lib/sounds/plm_drop_boot.ogg

7.09 KB
Binary file not shown.

lib/sounds/plm_eat_bite.ogg

9.73 KB
Binary file not shown.

lib/sounds/plm_floor_creak.ogg

16.3 KB
Binary file not shown.

lib/sounds/plm_floor_creak2.ogg

9.82 KB
Binary file not shown.

lib/sounds/plm_glass_break.ogg

9.6 KB
Binary file not shown.

lib/sounds/plm_glass_breaking.ogg

11.6 KB
Binary file not shown.

lib/sounds/plm_glass_smashing.ogg

15.5 KB
Binary file not shown.

lib/sounds/plm_jar_ding.ogg

6.87 KB
Binary file not shown.

lib/sounds/plm_levelup.ogg

65.1 KB
Binary file not shown.

lib/sounds/plm_lock_case.ogg

8.1 KB
Binary file not shown.

lib/sounds/plm_lock_distant.ogg

14.1 KB
Binary file not shown.

lib/sounds/plm_metal_clank.ogg

5.51 KB
Binary file not shown.

lib/sounds/plm_metal_sharpen.ogg

13 KB
Binary file not shown.

lib/sounds/plm_open_case.ogg

10.9 KB
Binary file not shown.

lib/sounds/plm_spell1.ogg

7.2 KB
Binary file not shown.

lib/sounds/plm_spell2.ogg

7.77 KB
Binary file not shown.

lib/sounds/plm_spell3.ogg

7.61 KB
Binary file not shown.

lib/sounds/plm_use_staff.ogg

18.6 KB
Binary file not shown.

lib/sounds/plm_wood_thud.ogg

6.98 KB
Binary file not shown.

lib/sounds/plm_zap_rod.ogg

23.1 KB
Binary file not shown.

lib/sounds/pls_bell_bowl.ogg

38.7 KB
Binary file not shown.

lib/sounds/pls_bell_chime_new.ogg

14.2 KB
Binary file not shown.

lib/sounds/pls_bell_glass.ogg

31 KB
Binary file not shown.

lib/sounds/pls_bell_hibell_soft.ogg

19 KB
Binary file not shown.

lib/sounds/pls_bell_mute.ogg

13.5 KB
Binary file not shown.

lib/sounds/pls_bell_sustain.ogg

33.9 KB
Binary file not shown.

lib/sounds/pls_breathe_in.ogg

10.7 KB
Binary file not shown.

lib/sounds/pls_man_argoh.ogg

11.8 KB
Binary file not shown.

lib/sounds/pls_man_gulp_new.ogg

6.33 KB
Binary file not shown.

lib/sounds/pls_man_oooh.ogg

9.56 KB
Binary file not shown.

lib/sounds/pls_man_scream2.ogg

29.8 KB
Binary file not shown.

lib/sounds/pls_man_sigh.ogg

18 KB
Binary file not shown.

lib/sounds/pls_man_sniff.ogg

6.66 KB
Binary file not shown.

lib/sounds/pls_man_sob.ogg

13.3 KB
Binary file not shown.

lib/sounds/pls_man_spit.ogg

13.1 KB
Binary file not shown.

lib/sounds/pls_man_ugh.ogg

7.52 KB
Binary file not shown.

lib/sounds/pls_man_yell.ogg

9.38 KB
Binary file not shown.

lib/sounds/pls_tone_blurk.ogg

5.63 KB
Binary file not shown.

lib/sounds/pls_tone_clave6.ogg

23 KB
Binary file not shown.

lib/sounds/pls_tone_clavelo8.ogg

26.3 KB
Binary file not shown.

lib/sounds/pls_tone_conk.ogg

5.59 KB
Binary file not shown.

lib/sounds/pls_tone_elec.ogg

9.02 KB
Binary file not shown.

lib/sounds/pls_tone_goblet.ogg

23.4 KB
Binary file not shown.

lib/sounds/pls_tone_guiro.ogg

9.62 KB
Binary file not shown.

lib/sounds/pls_tone_headstock.ogg

20.5 KB
Binary file not shown.

lib/sounds/pls_tone_scrape.ogg

5.14 KB
Binary file not shown.

lib/sounds/pls_tone_stick.ogg

5.51 KB
Binary file not shown.

lib/sounds/sto_bell_desk.ogg

14.2 KB
Binary file not shown.

lib/sounds/sto_bell_ding.ogg

18.5 KB
Binary file not shown.

lib/sounds/sto_bell_dingaling.ogg

25.1 KB
Binary file not shown.

lib/sounds/sto_bell_jingles.ogg

34.2 KB
Binary file not shown.

lib/sounds/sto_bell_register1.ogg

11.9 KB
Binary file not shown.

lib/sounds/sto_bell_register2.ogg

20.6 KB
Binary file not shown.

lib/sounds/sto_bell_ringing.ogg

30.2 KB
Binary file not shown.

lib/sounds/sto_bell_shop.ogg

13.8 KB
Binary file not shown.

lib/sounds/sto_coins_countertop.ogg

29.2 KB
Binary file not shown.

lib/sounds/sto_man_haha.ogg

11.2 KB
Binary file not shown.

lib/sounds/sto_man_hey.ogg

9.96 KB
Binary file not shown.

lib/sounds/sto_man_whoohaha.ogg

20.5 KB
Binary file not shown.

lib/sounds/sum_angel_song.ogg

49.9 KB
Binary file not shown.

lib/sounds/sum_bell_crystal.ogg

12.7 KB
Binary file not shown.

lib/sounds/sum_bell_hand.ogg

10.9 KB
Binary file not shown.

lib/sounds/sum_bell_tone.ogg

39.2 KB
Binary file not shown.

lib/sounds/sum_chime_jangle.ogg

37.9 KB
Binary file not shown.

lib/sounds/sum_ghost_moan.ogg

21.8 KB
Binary file not shown.

lib/sounds/sum_ghost_oooo.ogg

35.7 KB
Binary file not shown.

lib/sounds/sum_ghost_wail.ogg

20.4 KB
Binary file not shown.

lib/sounds/sum_gong_temple.ogg

21.5 KB
Binary file not shown.

lib/sounds/sum_laugh_evil2.ogg

28.5 KB
Binary file not shown.

lib/sounds/sum_lion_growl.ogg

21.8 KB
Binary file not shown.

lib/sounds/sum_piano_scrape.ogg

23.7 KB
Binary file not shown.

lib/sounds/wild_deepwater.ogg

102 KB
Binary file not shown.

lib/sounds/wild_desert.ogg

117 KB
Binary file not shown.

lib/sounds/wild_glacier.ogg

131 KB
Binary file not shown.

lib/sounds/wild_grass.ogg

44.3 KB
Binary file not shown.

lib/sounds/wild_hill.ogg

116 KB
Binary file not shown.

lib/sounds/wild_mountain.ogg

100 KB
Binary file not shown.

lib/sounds/wild_river.ogg

131 KB
Binary file not shown.

lib/sounds/wild_shore.ogg

70 KB
Binary file not shown.

lib/sounds/wild_swamp.ogg

49.3 KB
Binary file not shown.

lib/sounds/wild_volcano.ogg

116 KB
Binary file not shown.

lib/sounds/wild_waste.ogg

81.5 KB
Binary file not shown.

lib/sounds/wild_wood.ogg

41.7 KB
Binary file not shown.

libogg-0.dll

23.5 KB
Binary file not shown.

libvorbis-0.dll

160 KB
Binary file not shown.

libvorbisfile-3.dll

35.5 KB
Binary file not shown.

src/SDL.txt

+2
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,6 @@ How to build all SDL libraries required to run the SDL client:
2323
- In \SDL\libmad-0.15.1b, replace layer3.c by the one in \PWMAngband\src\fix to remove compile errors
2424
- Download and unzip SDL_mixer 1.2.12 in the \SDL directory:
2525
https://www.libsdl.org/projects/SDL_mixer/release-1.2.html
26+
- In \SDL\SDL_mixer-1.2.12, replace the following file by the one in \PWMAngband\src\fix:
27+
\VisualC\external\include\vorbis\vorbisfile.h
2628
- Run \PWMAngband\src\SDL.bat

src/SDL_mixer.mak

+5-3
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ OTHERFILES =
4545
# ---------------------------------------------------------------------------
4646
DEBUGLIBPATH = $(BCB)\lib\debug
4747
RELEASELIBPATH = $(BCB)\lib\release
48-
USERDEFINES = WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WAV_MUSIC;MP3_MAD_MUSIC;BUILD_SDL;FPM_DEFAULT
48+
USERDEFINES = WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WAV_MUSIC;MP3_MAD_MUSIC;BUILD_SDL;FPM_DEFAULT;OGG_MUSIC;OGG_DYNAMIC=\"libvorbisfile-3.dll\";BCC
4949
SYSDEFINES = NO_STRICT;_NO_VCL
50-
INCLUDEPATH = $(BCB)\include;_SDL;..\..\SDL\libmad-0.15.1b
50+
INCLUDEPATH = $(BCB)\include;_SDL;..\..\SDL\libmad-0.15.1b;..\..\SDL\SDL_mixer-1.2.12\VisualC\external\include
5151
LIBPATH = $(BCB)\lib\obj;$(BCB)\lib;_SDL
5252
WARNINGS= -w-par
5353
PATHCPP= .;..\..\SDL\SDL_mixer-1.2.12;..\..\SDL\libmad-0.15.1b
@@ -61,7 +61,9 @@ CFLAG1 = -WD -O2 -Hc -w- -Vx -Ve -X- \
6161
IDLCFLAGS = -I$(BCB)\include -I_SDL \
6262
-I..\..\SDL\libmad-0.15.1b \
6363
-src_suffix cpp -DWIN32 -D_WINDOWS -D_CRT_SECURE_NO_WARNINGS -DWAV_MUSIC \
64-
-DMP3_MAD_MUSIC -DBUILD_SDL -DFPM_DEFAULT -DNO_STRICT -D_NO_VCL -boa
64+
-DMP3_MAD_MUSIC -DBUILD_SDL -DFPM_DEFAULT \
65+
-DOGG_MUSIC -DOGG_DYNAMIC=\"libvorbisfile-3.dll\" -DBCC \
66+
-DNO_STRICT -D_NO_VCL -boa
6567
PFLAGS = -$Y- -$L- -$D- -$A8 -v -JPHNE -M
6668
RFLAGS =
6769
AFLAGS = /mx /w2 /zn

src/client/snd-sdl.c

+13-2
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ enum
4242

4343
static const struct sound_file_type supported_sound_files[] =
4444
{
45-
{".mp3", SDL_MUSIC},
4645
{".ogg", SDL_CHUNK},
46+
{".mp3", SDL_MUSIC},
4747
{"", SDL_NULL}
4848
};
4949

@@ -62,6 +62,9 @@ typedef struct
6262
} sdl_sample;
6363

6464

65+
static bool use_init = false;
66+
67+
6568
/*
6669
* Initialize SDL and open the mixer.
6770
*/
@@ -104,6 +107,12 @@ static bool load_sample_sdl(const char *filename, int file_type, sdl_sample *sam
104107
{
105108
case SDL_CHUNK:
106109
{
110+
if (!use_init)
111+
{
112+
Mix_Init(MIX_INIT_OGG);
113+
use_init = true;
114+
}
115+
107116
sample->sample_data.chunk = Mix_LoadWAV(filename);
108117
if (sample->sample_data.chunk) return true;
109118
break;
@@ -167,7 +176,7 @@ static bool play_sound_sdl(struct sound_data *data)
167176
case SDL_CHUNK:
168177
{
169178
/* If another sound is currently playing, stop it */
170-
Mix_HaltChannel(-1);
179+
/*Mix_HaltChannel(-1);*/
171180

172181
if (sample->sample_data.chunk)
173182
return (0 == Mix_PlayChannel(-1, sample->sample_data.chunk, 0));
@@ -234,6 +243,8 @@ static bool unload_sound_sdl(struct sound_data *data)
234243
*/
235244
static bool close_audio_sdl(void)
236245
{
246+
if (use_init) Mix_Quit();
247+
237248
/*
238249
* Close the audio
239250
*

src/fix/vorbisfile.h

+208
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,208 @@
1+
/********************************************************************
2+
* *
3+
* THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4+
* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5+
* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6+
* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7+
* *
8+
* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
9+
* by the Xiph.Org Foundation http://www.xiph.org/ *
10+
* *
11+
********************************************************************
12+
13+
function: stdio-based convenience library for opening/seeking/decoding
14+
last mod: $Id: vorbisfile.h 17182 2010-04-29 03:48:32Z xiphmont $
15+
16+
********************************************************************/
17+
18+
#ifndef _OV_FILE_H_
19+
#define _OV_FILE_H_
20+
21+
#ifdef __cplusplus
22+
extern "C"
23+
{
24+
#endif /* __cplusplus */
25+
26+
#include <stdio.h>
27+
#include "codec.h"
28+
29+
/* The function prototypes for the callbacks are basically the same as for
30+
* the stdio functions fread, fseek, fclose, ftell.
31+
* The one difference is that the FILE * arguments have been replaced with
32+
* a void * - this is to be used as a pointer to whatever internal data these
33+
* functions might need. In the stdio case, it's just a FILE * cast to a void *
34+
*
35+
* If you use other functions, check the docs for these functions and return
36+
* the right values. For seek_func(), you *MUST* return -1 if the stream is
37+
* unseekable
38+
*/
39+
typedef struct {
40+
size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
41+
int (*seek_func) (void *datasource, ogg_int64_t offset, int whence);
42+
int (*close_func) (void *datasource);
43+
long (*tell_func) (void *datasource);
44+
} ov_callbacks;
45+
46+
#ifndef OV_EXCLUDE_STATIC_CALLBACKS
47+
48+
/* a few sets of convenient callbacks, especially for use under
49+
* Windows where ov_open_callbacks() should always be used instead of
50+
* ov_open() to avoid problems with incompatible crt.o version linking
51+
* issues. */
52+
53+
static int _ov_header_fseek_wrap(FILE *f,ogg_int64_t off,int whence){
54+
if(f==NULL)return(-1);
55+
56+
#ifdef __MINGW32__
57+
return fseeko64(f,off,whence);
58+
#elif defined (BCC)
59+
return fseek(f,off,whence);
60+
#elif defined (_WIN32)
61+
return _fseeki64(f,off,whence);
62+
#else
63+
return fseek(f,off,whence);
64+
#endif
65+
}
66+
67+
/* These structs below (OV_CALLBACKS_DEFAULT etc) are defined here as
68+
* static data. That means that every file which includes this header
69+
* will get its own copy of these structs whether it uses them or
70+
* not unless it #defines OV_EXCLUDE_STATIC_CALLBACKS.
71+
* These static symbols are essential on platforms such as Windows on
72+
* which several different versions of stdio support may be linked to
73+
* by different DLLs, and we need to be certain we know which one
74+
* we're using (the same one as the main application).
75+
*/
76+
77+
static ov_callbacks OV_CALLBACKS_DEFAULT = {
78+
(size_t (*)(void *, size_t, size_t, void *)) fread,
79+
(int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
80+
(int (*)(void *)) fclose,
81+
(long (*)(void *)) ftell
82+
};
83+
84+
static ov_callbacks OV_CALLBACKS_NOCLOSE = {
85+
(size_t (*)(void *, size_t, size_t, void *)) fread,
86+
(int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
87+
(int (*)(void *)) NULL,
88+
(long (*)(void *)) ftell
89+
};
90+
91+
static ov_callbacks OV_CALLBACKS_STREAMONLY = {
92+
(size_t (*)(void *, size_t, size_t, void *)) fread,
93+
(int (*)(void *, ogg_int64_t, int)) NULL,
94+
(int (*)(void *)) fclose,
95+
(long (*)(void *)) NULL
96+
};
97+
98+
static ov_callbacks OV_CALLBACKS_STREAMONLY_NOCLOSE = {
99+
(size_t (*)(void *, size_t, size_t, void *)) fread,
100+
(int (*)(void *, ogg_int64_t, int)) NULL,
101+
(int (*)(void *)) NULL,
102+
(long (*)(void *)) NULL
103+
};
104+
105+
#endif
106+
107+
#define NOTOPEN 0
108+
#define PARTOPEN 1
109+
#define OPENED 2
110+
#define STREAMSET 3
111+
#define INITSET 4
112+
113+
typedef struct OggVorbis_File {
114+
void *datasource; /* Pointer to a FILE *, etc. */
115+
int seekable;
116+
ogg_int64_t offset;
117+
ogg_int64_t end;
118+
ogg_sync_state oy;
119+
120+
/* If the FILE handle isn't seekable (eg, a pipe), only the current
121+
stream appears */
122+
int links;
123+
ogg_int64_t *offsets;
124+
ogg_int64_t *dataoffsets;
125+
long *serialnos;
126+
ogg_int64_t *pcmlengths; /* overloaded to maintain binary
127+
compatibility; x2 size, stores both
128+
beginning and end values */
129+
vorbis_info *vi;
130+
vorbis_comment *vc;
131+
132+
/* Decoding working state local storage */
133+
ogg_int64_t pcm_offset;
134+
int ready_state;
135+
long current_serialno;
136+
int current_link;
137+
138+
double bittrack;
139+
double samptrack;
140+
141+
ogg_stream_state os; /* take physical pages, weld into a logical
142+
stream of packets */
143+
vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
144+
vorbis_block vb; /* local working space for packet->PCM decode */
145+
146+
ov_callbacks callbacks;
147+
148+
} OggVorbis_File;
149+
150+
151+
extern int ov_clear(OggVorbis_File *vf);
152+
extern int ov_fopen(const char *path,OggVorbis_File *vf);
153+
extern int ov_open(FILE *f,OggVorbis_File *vf,const char *initial,long ibytes);
154+
extern int ov_open_callbacks(void *datasource, OggVorbis_File *vf,
155+
const char *initial, long ibytes, ov_callbacks callbacks);
156+
157+
extern int ov_test(FILE *f,OggVorbis_File *vf,const char *initial,long ibytes);
158+
extern int ov_test_callbacks(void *datasource, OggVorbis_File *vf,
159+
const char *initial, long ibytes, ov_callbacks callbacks);
160+
extern int ov_test_open(OggVorbis_File *vf);
161+
162+
extern long ov_bitrate(OggVorbis_File *vf,int i);
163+
extern long ov_bitrate_instant(OggVorbis_File *vf);
164+
extern long ov_streams(OggVorbis_File *vf);
165+
extern long ov_seekable(OggVorbis_File *vf);
166+
extern long ov_serialnumber(OggVorbis_File *vf,int i);
167+
168+
extern ogg_int64_t ov_raw_total(OggVorbis_File *vf,int i);
169+
extern ogg_int64_t ov_pcm_total(OggVorbis_File *vf,int i);
170+
extern double ov_time_total(OggVorbis_File *vf,int i);
171+
172+
extern int ov_raw_seek(OggVorbis_File *vf,ogg_int64_t pos);
173+
extern int ov_pcm_seek(OggVorbis_File *vf,ogg_int64_t pos);
174+
extern int ov_pcm_seek_page(OggVorbis_File *vf,ogg_int64_t pos);
175+
extern int ov_time_seek(OggVorbis_File *vf,double pos);
176+
extern int ov_time_seek_page(OggVorbis_File *vf,double pos);
177+
178+
extern int ov_raw_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
179+
extern int ov_pcm_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
180+
extern int ov_pcm_seek_page_lap(OggVorbis_File *vf,ogg_int64_t pos);
181+
extern int ov_time_seek_lap(OggVorbis_File *vf,double pos);
182+
extern int ov_time_seek_page_lap(OggVorbis_File *vf,double pos);
183+
184+
extern ogg_int64_t ov_raw_tell(OggVorbis_File *vf);
185+
extern ogg_int64_t ov_pcm_tell(OggVorbis_File *vf);
186+
extern double ov_time_tell(OggVorbis_File *vf);
187+
188+
extern vorbis_info *ov_info(OggVorbis_File *vf,int link);
189+
extern vorbis_comment *ov_comment(OggVorbis_File *vf,int link);
190+
191+
extern long ov_read_float(OggVorbis_File *vf,float ***pcm_channels,int samples,
192+
int *bitstream);
193+
extern long ov_read_filter(OggVorbis_File *vf,char *buffer,int length,
194+
int bigendianp,int word,int sgned,int *bitstream,
195+
void (*filter)(float **pcm,long channels,long samples,void *filter_param),void *filter_param);
196+
extern long ov_read(OggVorbis_File *vf,char *buffer,int length,
197+
int bigendianp,int word,int sgned,int *bitstream);
198+
extern int ov_crosslap(OggVorbis_File *vf1,OggVorbis_File *vf2);
199+
200+
extern int ov_halfrate(OggVorbis_File *vf,int flag);
201+
extern int ov_halfrate_p(OggVorbis_File *vf);
202+
203+
#ifdef __cplusplus
204+
}
205+
#endif /* __cplusplus */
206+
207+
#endif
208+

0 commit comments

Comments
 (0)