[wecleman]+ WEC Le Mans 24
Posted: Fri Jun 06, 2025 9:17 am
wecleman.xml
weclemana.xml
weclemanb.xml
weclemanc.xml
Code: Select all
<!-- WEC Le Mans 24 (v2.01) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@08C36 = 60</action> <!-- obstacle -->
<action>maincpu.mb@1CFFC = 60</action> <!-- car -->
</script>
<script state="off">
<action>maincpu.mb@08C36 = 64</action>
<action>maincpu.mb@1CFFC = 62</action>
</script>
</cheat>
<cheat desc="no offroad slowdown">
<script state="on">
<action>maincpu.mb@8AE2 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@8AE2 = 63</action>
</script>
</cheat>
<cheat desc="no tire slip">
<script state="on">
<action>maincpu.mw@92D2 = 426E</action>
<action>maincpu.mw@9396 = 604A</action>
</script>
<script state="off">
<action>maincpu.mw@92D2 = 3D40</action>
<action>maincpu.mw@9396 = 674A</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x0800">01 (slow)</item>
<item value="0x1000">02 </item>
<item value="0x4000">03 </item>
<item value="0x8000">04 </item>
<item value="0xFFFF">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@1F9A = param</action>
</script>
<script state="off">
<action>maincpu.mw@1F9A = 8001</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mq@010C6 = 4EF90003D0004E71</action>
<action>maincpu.mq@3D000 = 41EE100043F90014</action>
<action>maincpu.mq@3D008 = 000145E900041D7C</action>
<action>maincpu.mq@3D010 = 0080003C12004280</action>
<action>maincpu.mq@3D018 = 0C2E0060001A6602</action>
<action>maincpu.mq@3D020 = 70204A2E003A6702</action>
<action>maincpu.mq@3D028 = 70100C2E0080003C</action>
<action>maincpu.mq@3D030 = 6708640470016002</action>
<action>maincpu.mq@3D038 = 7002B20067D60C00</action>
<action>maincpu.mq@3D040 = 0001660253100C00</action>
<action>maincpu.mq@3D048 = 0002660252100C00</action>
<action>maincpu.mq@3D050 = 0010660412906008</action>
<action>maincpu.mq@3D058 = 0C00002066124211</action>
<action>maincpu.mq@3D060 = 142E018108C20002</action>
<action>maincpu.mq@3D068 = 1482088200021482</action>
<action>maincpu.mq@3D070 = 60A2FFFFFFFFFFFF</action>
<!--
3D000 | 41EE 1000 : lea ($1000,A6), A0 // sound code address ($41000)
3D004 | 43F9 0014 0001 : lea $140001.l, A1 // sound latch address
3D00A | 45E9 0004 : lea ($4,A1), A2 // sound trigger address ($140005)
3D00E | 1D7C 0080 003C : move.b #$80, ($3c,A6) // avoid sound code decrement at reset
3D014 | 1200 : move.b D0, D1
3D016 | 4280 : clr.l D0
3D018 | 0C2E 0060 001A : cmpi.b #$60, ($1a,A6) // read brake input
3D01E | 6602 : bne $3d022
3D020 | 7020 : moveq #$20, D0
3D022 | 4A2E 003A : tst.b ($3a,A6) // read accel input
3D026 | 6702 : beq $3d02a
3D028 | 7010 : moveq #$10, D0
3D02A | 0C2E 0080 003C : cmpi.b #-$80, ($3c,A6) // read wheel input
3D030 | 6708 : beq $3d03a
3D032 | 6404 : bcc $3d038
3D034 | 7001 : moveq #$1, D0
3D036 | 6002 : bra $3d03a
3D038 | 7002 : moveq #$2, D0
3D03A | B200 : cmp.b D0, D1
3D03C | 67D6 : beq $3d014
3D03E | 0C00 0001 : cmpi.b #$1, D0
3D042 | 6602 : bne $3d046
3D044 | 5310 : subq.b #1, (A0) // decrease code -01
3D046 | 0C00 0002 : cmpi.b #$2, D0
3D04A | 6602 : bne $3d04e
3D04C | 5210 : addq.b #1, (A0) // increase code +01
3D04E | 0C00 0010 : cmpi.b #$10, D0
3D052 | 6604 : bne $3d058
3D054 | 1290 : move.b (A0), (A1) // play sound
3D056 | 6008 : bra $3d060
3D058 | 0C00 0020 : cmpi.b #$20, D0
3D05C | 6612 : bne $3d070
3D05E | 4211 : clr.b (A1) // stop sound
3D060 | 142E 0181 : move.b ($181,A6), D2
3D064 | 08C2 0002 : bset #$2, D2
3D068 | 1482 : move.b D2, (A2)
3D06A | 0882 0002 : bclr #$2, D2
3D06E | 1482 : move.b D2, (A2)
3D070 | 60A2 : bra $3d014
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code" line="11" align="center" />
<output format="right : increase code" line="12" align="center" />
<output format="accel : play sound" line="13" align="center" />
<output format="brake : stop sound" line="14" align="center" />
<output format="----------------------------" line="15" align="center" />
<output format="<< sound code %02X >>" line="17" align="center">
<argument>maincpu.pb@41000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@010C6 = 13EE018100140005</action>
<action>maincpu.mq@3D000 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D008 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D010 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D018 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D020 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D028 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D030 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D038 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D040 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D048 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D050 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D058 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D060 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D068 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D070 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@108C = 4E71</action>
</script>
<script state="off">
<action>maincpu.mw@108C = 4E4F</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- WEC Le Mans 24 (v2.00) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@08C36 = 60</action> <!-- obstacle -->
<action>maincpu.mb@1CFFC = 60</action> <!-- car -->
</script>
<script state="off">
<action>maincpu.mb@08C36 = 64</action>
<action>maincpu.mb@1CFFC = 62</action>
</script>
</cheat>
<cheat desc="no offroad slowdown">
<script state="on">
<action>maincpu.mb@8AE2 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@8AE2 = 63</action>
</script>
</cheat>
<cheat desc="no tire slip">
<script state="on">
<action>maincpu.mw@92D2 = 426E</action>
<action>maincpu.mw@9396 = 604A</action>
</script>
<script state="off">
<action>maincpu.mw@92D2 = 3D40</action>
<action>maincpu.mw@9396 = 674A</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x0800">01 (slow)</item>
<item value="0x1000">02 </item>
<item value="0x4000">03 </item>
<item value="0x8000">04 </item>
<item value="0xFFFF">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@1F9A = param</action>
</script>
<script state="off">
<action>maincpu.mw@1F9A = 8001</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mq@010C6 = 4EF90003D0004E71</action>
<action>maincpu.mq@3D000 = 41EE100043F90014</action>
<action>maincpu.mq@3D008 = 000145E900041D7C</action>
<action>maincpu.mq@3D010 = 0080003C12004280</action>
<action>maincpu.mq@3D018 = 0C2E0060001A6602</action>
<action>maincpu.mq@3D020 = 70204A2E003A6702</action>
<action>maincpu.mq@3D028 = 70100C2E0080003C</action>
<action>maincpu.mq@3D030 = 6708640470016002</action>
<action>maincpu.mq@3D038 = 7002B20067D60C00</action>
<action>maincpu.mq@3D040 = 0001660253100C00</action>
<action>maincpu.mq@3D048 = 0002660252100C00</action>
<action>maincpu.mq@3D050 = 0010660412906008</action>
<action>maincpu.mq@3D058 = 0C00002066124211</action>
<action>maincpu.mq@3D060 = 142E018108C20002</action>
<action>maincpu.mq@3D068 = 1482088200021482</action>
<action>maincpu.mq@3D070 = 60A2FFFFFFFFFFFF</action>
<!--
3D000 | 41EE 1000 : lea ($1000,A6), A0 // sound code address ($41000)
3D004 | 43F9 0014 0001 : lea $140001.l, A1 // sound latch address
3D00A | 45E9 0004 : lea ($4,A1), A2 // sound trigger address ($140005)
3D00E | 1D7C 0080 003C : move.b #$80, ($3c,A6) // avoid sound code decrement at reset
3D014 | 1200 : move.b D0, D1
3D016 | 4280 : clr.l D0
3D018 | 0C2E 0060 001A : cmpi.b #$60, ($1a,A6) // read brake input
3D01E | 6602 : bne $3d022
3D020 | 7020 : moveq #$20, D0
3D022 | 4A2E 003A : tst.b ($3a,A6) // read accel input
3D026 | 6702 : beq $3d02a
3D028 | 7010 : moveq #$10, D0
3D02A | 0C2E 0080 003C : cmpi.b #-$80, ($3c,A6) // read wheel input
3D030 | 6708 : beq $3d03a
3D032 | 6404 : bcc $3d038
3D034 | 7001 : moveq #$1, D0
3D036 | 6002 : bra $3d03a
3D038 | 7002 : moveq #$2, D0
3D03A | B200 : cmp.b D0, D1
3D03C | 67D6 : beq $3d014
3D03E | 0C00 0001 : cmpi.b #$1, D0
3D042 | 6602 : bne $3d046
3D044 | 5310 : subq.b #1, (A0) // decrease code -01
3D046 | 0C00 0002 : cmpi.b #$2, D0
3D04A | 6602 : bne $3d04e
3D04C | 5210 : addq.b #1, (A0) // increase code +01
3D04E | 0C00 0010 : cmpi.b #$10, D0
3D052 | 6604 : bne $3d058
3D054 | 1290 : move.b (A0), (A1) // play sound
3D056 | 6008 : bra $3d060
3D058 | 0C00 0020 : cmpi.b #$20, D0
3D05C | 6612 : bne $3d070
3D05E | 4211 : clr.b (A1) // stop sound
3D060 | 142E 0181 : move.b ($181,A6), D2
3D064 | 08C2 0002 : bset #$2, D2
3D068 | 1482 : move.b D2, (A2)
3D06A | 0882 0002 : bclr #$2, D2
3D06E | 1482 : move.b D2, (A2)
3D070 | 60A2 : bra $3d014
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code" line="11" align="center" />
<output format="right : increase code" line="12" align="center" />
<output format="accel : play sound" line="13" align="center" />
<output format="brake : stop sound" line="14" align="center" />
<output format="----------------------------" line="15" align="center" />
<output format="<< sound code %02X >>" line="17" align="center">
<argument>maincpu.pb@41000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@010C6 = 13EE018100140005</action>
<action>maincpu.mq@3D000 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D008 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D010 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D018 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D020 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D028 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D030 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D038 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D040 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D048 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D050 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D058 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D060 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D068 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D070 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@108C = 4E71</action>
</script>
<script state="off">
<action>maincpu.mw@108C = 4E4F</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- WEC Le Mans 24 (v2.00, hack) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@08C36 = 60</action> <!-- obstacle -->
<action>maincpu.mb@1CFFC = 60</action> <!-- car -->
</script>
<script state="off">
<action>maincpu.mb@08C36 = 64</action>
<action>maincpu.mb@1CFFC = 62</action>
</script>
</cheat>
<cheat desc="no offroad slowdown">
<script state="on">
<action>maincpu.mb@8AE2 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@8AE2 = 63</action>
</script>
</cheat>
<cheat desc="no tire slip">
<script state="on">
<action>maincpu.mw@92D2 = 426E</action>
<action>maincpu.mw@9396 = 604A</action>
</script>
<script state="off">
<action>maincpu.mw@92D2 = 3D40</action>
<action>maincpu.mw@9396 = 674A</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x0800">01 (slow)</item>
<item value="0x1000">02 </item>
<item value="0x4000">03 </item>
<item value="0x8000">04 </item>
<item value="0xFFFF">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@1F9A = param</action>
</script>
<script state="off">
<action>maincpu.mw@1F9A = 8001</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mq@010C6 = 4EF90003D0004E71</action>
<action>maincpu.mq@3D000 = 41EE100043F90014</action>
<action>maincpu.mq@3D008 = 000145E900041D7C</action>
<action>maincpu.mq@3D010 = 0080003C12004280</action>
<action>maincpu.mq@3D018 = 0C2E0060001A6602</action>
<action>maincpu.mq@3D020 = 70204A2E003A6702</action>
<action>maincpu.mq@3D028 = 70100C2E0080003C</action>
<action>maincpu.mq@3D030 = 6708640470016002</action>
<action>maincpu.mq@3D038 = 7002B20067D60C00</action>
<action>maincpu.mq@3D040 = 0001660253100C00</action>
<action>maincpu.mq@3D048 = 0002660252100C00</action>
<action>maincpu.mq@3D050 = 0010660412906008</action>
<action>maincpu.mq@3D058 = 0C00002066124211</action>
<action>maincpu.mq@3D060 = 142E018108C20002</action>
<action>maincpu.mq@3D068 = 1482088200021482</action>
<action>maincpu.mq@3D070 = 60A2FFFFFFFFFFFF</action>
<!--
3D000 | 41EE 1000 : lea ($1000,A6), A0 // sound code address ($41000)
3D004 | 43F9 0014 0001 : lea $140001.l, A1 // sound latch address
3D00A | 45E9 0004 : lea ($4,A1), A2 // sound trigger address ($140005)
3D00E | 1D7C 0080 003C : move.b #$80, ($3c,A6) // avoid sound code decrement at reset
3D014 | 1200 : move.b D0, D1
3D016 | 4280 : clr.l D0
3D018 | 0C2E 0060 001A : cmpi.b #$60, ($1a,A6) // read brake input
3D01E | 6602 : bne $3d022
3D020 | 7020 : moveq #$20, D0
3D022 | 4A2E 003A : tst.b ($3a,A6) // read accel input
3D026 | 6702 : beq $3d02a
3D028 | 7010 : moveq #$10, D0
3D02A | 0C2E 0080 003C : cmpi.b #-$80, ($3c,A6) // read wheel input
3D030 | 6708 : beq $3d03a
3D032 | 6404 : bcc $3d038
3D034 | 7001 : moveq #$1, D0
3D036 | 6002 : bra $3d03a
3D038 | 7002 : moveq #$2, D0
3D03A | B200 : cmp.b D0, D1
3D03C | 67D6 : beq $3d014
3D03E | 0C00 0001 : cmpi.b #$1, D0
3D042 | 6602 : bne $3d046
3D044 | 5310 : subq.b #1, (A0) // decrease code -01
3D046 | 0C00 0002 : cmpi.b #$2, D0
3D04A | 6602 : bne $3d04e
3D04C | 5210 : addq.b #1, (A0) // increase code +01
3D04E | 0C00 0010 : cmpi.b #$10, D0
3D052 | 6604 : bne $3d058
3D054 | 1290 : move.b (A0), (A1) // play sound
3D056 | 6008 : bra $3d060
3D058 | 0C00 0020 : cmpi.b #$20, D0
3D05C | 6612 : bne $3d070
3D05E | 4211 : clr.b (A1) // stop sound
3D060 | 142E 0181 : move.b ($181,A6), D2
3D064 | 08C2 0002 : bset #$2, D2
3D068 | 1482 : move.b D2, (A2)
3D06A | 0882 0002 : bclr #$2, D2
3D06E | 1482 : move.b D2, (A2)
3D070 | 60A2 : bra $3d014
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code" line="11" align="center" />
<output format="right : increase code" line="12" align="center" />
<output format="accel : play sound" line="13" align="center" />
<output format="brake : stop sound" line="14" align="center" />
<output format="----------------------------" line="15" align="center" />
<output format="<< sound code %02X >>" line="17" align="center">
<argument>maincpu.pb@41000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@010C6 = 13EE018100140005</action>
<action>maincpu.mq@3D000 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D008 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D010 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D018 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D020 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D028 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D030 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D038 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D040 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D048 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D050 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D058 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D060 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D068 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D070 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@108C = 4E71</action>
</script>
<script state="off">
<action>maincpu.mw@108C = 4E4F</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- WEC Le Mans 24 (v1.26) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@08C36 = 60</action> <!-- obstacle -->
<action>maincpu.mb@1CFFC = 60</action> <!-- car -->
</script>
<script state="off">
<action>maincpu.mb@08C36 = 64</action>
<action>maincpu.mb@1CFFC = 62</action>
</script>
</cheat>
<cheat desc="no offroad slowdown">
<script state="on">
<action>maincpu.mb@8AE2 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@8AE2 = 63</action>
</script>
</cheat>
<cheat desc="no tire slip">
<script state="on">
<action>maincpu.mw@92D2 = 426E</action>
<action>maincpu.mw@9396 = 604A</action>
</script>
<script state="off">
<action>maincpu.mw@92D2 = 3D40</action>
<action>maincpu.mw@9396 = 674A</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x0800">01 (slow)</item>
<item value="0x1000">02 </item>
<item value="0x4000">03 </item>
<item value="0x8000">04 </item>
<item value="0xFFFF">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@1F9A = param</action>
</script>
<script state="off">
<action>maincpu.mw@1F9A = 8001</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mq@010C6 = 4EF90003D0004E71</action>
<action>maincpu.mq@3D000 = 41EE100043F90014</action>
<action>maincpu.mq@3D008 = 000145E900041D7C</action>
<action>maincpu.mq@3D010 = 0080003C12004280</action>
<action>maincpu.mq@3D018 = 0C2E0060001A6602</action>
<action>maincpu.mq@3D020 = 70204A2E003A6702</action>
<action>maincpu.mq@3D028 = 70100C2E0080003C</action>
<action>maincpu.mq@3D030 = 6708640470016002</action>
<action>maincpu.mq@3D038 = 7002B20067D60C00</action>
<action>maincpu.mq@3D040 = 0001660253100C00</action>
<action>maincpu.mq@3D048 = 0002660252100C00</action>
<action>maincpu.mq@3D050 = 0010660412906008</action>
<action>maincpu.mq@3D058 = 0C00002066124211</action>
<action>maincpu.mq@3D060 = 142E018108C20002</action>
<action>maincpu.mq@3D068 = 1482088200021482</action>
<action>maincpu.mq@3D070 = 60A2FFFFFFFFFFFF</action>
<!--
3D000 | 41EE 1000 : lea ($1000,A6), A0 // sound code address ($41000)
3D004 | 43F9 0014 0001 : lea $140001.l, A1 // sound latch address
3D00A | 45E9 0004 : lea ($4,A1), A2 // sound trigger address ($140005)
3D00E | 1D7C 0080 003C : move.b #$80, ($3c,A6) // avoid sound code decrement at reset
3D014 | 1200 : move.b D0, D1
3D016 | 4280 : clr.l D0
3D018 | 0C2E 0060 001A : cmpi.b #$60, ($1a,A6) // read brake input
3D01E | 6602 : bne $3d022
3D020 | 7020 : moveq #$20, D0
3D022 | 4A2E 003A : tst.b ($3a,A6) // read accel input
3D026 | 6702 : beq $3d02a
3D028 | 7010 : moveq #$10, D0
3D02A | 0C2E 0080 003C : cmpi.b #-$80, ($3c,A6) // read wheel input
3D030 | 6708 : beq $3d03a
3D032 | 6404 : bcc $3d038
3D034 | 7001 : moveq #$1, D0
3D036 | 6002 : bra $3d03a
3D038 | 7002 : moveq #$2, D0
3D03A | B200 : cmp.b D0, D1
3D03C | 67D6 : beq $3d014
3D03E | 0C00 0001 : cmpi.b #$1, D0
3D042 | 6602 : bne $3d046
3D044 | 5310 : subq.b #1, (A0) // decrease code -01
3D046 | 0C00 0002 : cmpi.b #$2, D0
3D04A | 6602 : bne $3d04e
3D04C | 5210 : addq.b #1, (A0) // increase code +01
3D04E | 0C00 0010 : cmpi.b #$10, D0
3D052 | 6604 : bne $3d058
3D054 | 1290 : move.b (A0), (A1) // play sound
3D056 | 6008 : bra $3d060
3D058 | 0C00 0020 : cmpi.b #$20, D0
3D05C | 6612 : bne $3d070
3D05E | 4211 : clr.b (A1) // stop sound
3D060 | 142E 0181 : move.b ($181,A6), D2
3D064 | 08C2 0002 : bset #$2, D2
3D068 | 1482 : move.b D2, (A2)
3D06A | 0882 0002 : bclr #$2, D2
3D06E | 1482 : move.b D2, (A2)
3D070 | 60A2 : bra $3d014
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code" line="11" align="center" />
<output format="right : increase code" line="12" align="center" />
<output format="accel : play sound" line="13" align="center" />
<output format="brake : stop sound" line="14" align="center" />
<output format="----------------------------" line="15" align="center" />
<output format="<< sound code %02X >>" line="17" align="center">
<argument>maincpu.pb@41000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@010C6 = 13EE018100140005</action>
<action>maincpu.mq@3D000 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D008 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D010 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D018 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D020 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D028 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D030 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D038 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D040 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D048 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D050 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D058 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D060 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D068 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3D070 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@108C = 4E71</action>
</script>
<script state="off">
<action>maincpu.mw@108C = 4E4F</action>
</script>
</cheat>
</mamecheat>