sb16.c (3c825bb7c1b4289ef05f51b5b77ac0967b6a27fa) | sb16.c (85bc58520c0e43660cbbe51b9eb5022a0baafe9f) |
---|---|
1/* 2 * QEMU Soundblaster 16 emulation 3 * 4 * Copyright (c) 2003-2005 Vassili Karpov (malc) 5 * 6 * Permission is hereby granted, free of charge, to any person obtaining a copy 7 * of this software and associated documentation files (the "Software"), to deal 8 * in the Software without restriction, including without limitation the rights --- 52 unchanged lines hidden (view full) --- 61 IsaDma *isa_dma; 62 IsaDma *isa_hdma; 63 64 int in_index; 65 int out_data_len; 66 int fmt_stereo; 67 int fmt_signed; 68 int fmt_bits; | 1/* 2 * QEMU Soundblaster 16 emulation 3 * 4 * Copyright (c) 2003-2005 Vassili Karpov (malc) 5 * 6 * Permission is hereby granted, free of charge, to any person obtaining a copy 7 * of this software and associated documentation files (the "Software"), to deal 8 * in the Software without restriction, including without limitation the rights --- 52 unchanged lines hidden (view full) --- 61 IsaDma *isa_dma; 62 IsaDma *isa_hdma; 63 64 int in_index; 65 int out_data_len; 66 int fmt_stereo; 67 int fmt_signed; 68 int fmt_bits; |
69 audfmt_e fmt; | 69 AudioFormat fmt; |
70 int dma_auto; 71 int block_size; 72 int fifo; 73 int freq; 74 int time_const; 75 int speaker; 76 int needed_bytes; 77 int cmd; --- 141 unchanged lines hidden (view full) --- 219 ); 220 } 221 222 control (s, 1); 223} 224 225static void dma_cmd8 (SB16State *s, int mask, int dma_len) 226{ | 70 int dma_auto; 71 int block_size; 72 int fifo; 73 int freq; 74 int time_const; 75 int speaker; 76 int needed_bytes; 77 int cmd; --- 141 unchanged lines hidden (view full) --- 219 ); 220 } 221 222 control (s, 1); 223} 224 225static void dma_cmd8 (SB16State *s, int mask, int dma_len) 226{ |
227 s->fmt = AUD_FMT_U8; | 227 s->fmt = AUDIO_FORMAT_U8; |
228 s->use_hdma = 0; 229 s->fmt_bits = 8; 230 s->fmt_signed = 0; 231 s->fmt_stereo = (s->mixer_regs[0x0e] & 2) != 0; 232 if (-1 == s->time_const) { 233 if (s->freq <= 0) 234 s->freq = 11025; 235 } --- 78 unchanged lines hidden (view full) --- 314 315 ldebug ("freq %d, stereo %d, sign %d, bits %d, " 316 "dma %d, auto %d, fifo %d, high %d\n", 317 s->freq, s->fmt_stereo, s->fmt_signed, s->fmt_bits, 318 s->block_size, s->dma_auto, s->fifo, s->highspeed); 319 320 if (16 == s->fmt_bits) { 321 if (s->fmt_signed) { | 228 s->use_hdma = 0; 229 s->fmt_bits = 8; 230 s->fmt_signed = 0; 231 s->fmt_stereo = (s->mixer_regs[0x0e] & 2) != 0; 232 if (-1 == s->time_const) { 233 if (s->freq <= 0) 234 s->freq = 11025; 235 } --- 78 unchanged lines hidden (view full) --- 314 315 ldebug ("freq %d, stereo %d, sign %d, bits %d, " 316 "dma %d, auto %d, fifo %d, high %d\n", 317 s->freq, s->fmt_stereo, s->fmt_signed, s->fmt_bits, 318 s->block_size, s->dma_auto, s->fifo, s->highspeed); 319 320 if (16 == s->fmt_bits) { 321 if (s->fmt_signed) { |
322 s->fmt = AUD_FMT_S16; | 322 s->fmt = AUDIO_FORMAT_S16; |
323 } 324 else { | 323 } 324 else { |
325 s->fmt = AUD_FMT_U16; | 325 s->fmt = AUDIO_FORMAT_U16; |
326 } 327 } 328 else { 329 if (s->fmt_signed) { | 326 } 327 } 328 else { 329 if (s->fmt_signed) { |
330 s->fmt = AUD_FMT_S8; | 330 s->fmt = AUDIO_FORMAT_S8; |
331 } 332 else { | 331 } 332 else { |
333 s->fmt = AUD_FMT_U8; | 333 s->fmt = AUDIO_FORMAT_U8; |
334 } 335 } 336 337 s->left_till_irq = s->block_size; 338 339 s->bytes_per_second = (s->freq << s->fmt_stereo) << (s->fmt_bits == 16); 340 s->highspeed = 0; 341 s->align = (1 << (s->fmt_stereo + (s->fmt_bits == 16))) - 1; --- 505 unchanged lines hidden (view full) --- 847 848 s->freq = 11025; 849 s->fmt_signed = 0; 850 s->fmt_bits = 8; 851 s->fmt_stereo = 0; 852 853 as.freq = s->freq; 854 as.nchannels = 1; | 334 } 335 } 336 337 s->left_till_irq = s->block_size; 338 339 s->bytes_per_second = (s->freq << s->fmt_stereo) << (s->fmt_bits == 16); 340 s->highspeed = 0; 341 s->align = (1 << (s->fmt_stereo + (s->fmt_bits == 16))) - 1; --- 505 unchanged lines hidden (view full) --- 847 848 s->freq = 11025; 849 s->fmt_signed = 0; 850 s->fmt_bits = 8; 851 s->fmt_stereo = 0; 852 853 as.freq = s->freq; 854 as.nchannels = 1; |
855 as.fmt = AUD_FMT_U8; | 855 as.fmt = AUDIO_FORMAT_U8; |
856 as.endianness = 0; 857 858 s->voice = AUD_open_out ( 859 &s->card, 860 s->voice, 861 "sb16", 862 s, 863 SB_audio_callback, --- 592 unchanged lines hidden --- | 856 as.endianness = 0; 857 858 s->voice = AUD_open_out ( 859 &s->card, 860 s->voice, 861 "sb16", 862 s, 863 SB_audio_callback, --- 592 unchanged lines hidden --- |