琵琶行论坛

 找回密码
 注册
每日签到论坛FTP使用教学领取红包(开放!)论坛FTP搜索引擎
查看: 652|回复: 5

[原创] [FC][PCM播放程序]

[复制链接]

签到天数: 1 天

[LV.1]初来乍到

发表于 2021-3-4 00:59:14 | 显示全部楼层 |阅读模式
本帖最后由 FlameCyclone 于 2021-3-4 13:19 编辑
  1. ;[MMC5][PCM声音播放][可选码率][20210303]
  2. ;FlameCyclone
  3. ;========================================
  4. ;歌曲采样率 = (3048KB * 1024)(字节) / 时长(秒数)
  5. ;   码率 = CPU主频/采样率  = 写入PCM端口间隔周期
  6. ;320kbps = 1789772.5/40000 =  44.74
  7. ;312kbps = 1789772.5/39000 =  45.89
  8. ;304kbps = 1789772.5/38000 =  47.09
  9. ;296kbps = 1789772.5/37000 =  48.37
  10. ;288kbps = 1789772.5/36000 =  49.71
  11. ;280kbps = 1789772.5/35000 =  51.13
  12. ;272kbps = 1789772.5/34000 =  52.64
  13. ;264kbps = 1789772.5/33000 =  54.23
  14. ;256kbps = 1789772.5/32000 =  55.93
  15. ;248kbps = 1789772.5/31000 =  57.73
  16. ;240kbps = 1789772.5/30000 =  59.65
  17. ;232kbps = 1789772.5/29000 =  61.71
  18. ;224kbps = 1789772.5/28000 =  63.92
  19. ;216kbps = 1789772.5/27000 =  66.28
  20. ;208kbps = 1789772.5/26000 =  68.83
  21. ;200kbps = 1789772.5/25000 =  71.59
  22. ;192kbps = 1789772.5/24000 =  74.57
  23. ;184kbps = 1789772.5/23000 =  77.81
  24. ;176kbps = 1789772.5/22000 =  81.35
  25. ;168kbps = 1789772.5/21000 =  85.22
  26. ;160kbps = 1789772.5/20000 =  89.48
  27. ;172kbps = 1789772.5/19000 =  94.19
  28. ;144kbps = 1789772.5/18000 =  99.43
  29. ;136kbps = 1789772.5/17000 = 105.28
  30. ;128kbps = 1789772.5/16000 = 111.86
  31. ;120kbps = 1789772.5/15000 = 119.31
  32. ;112kbps = 1789772.5/14000 = 127.84
  33. ;104kbps = 1789772.5/13000 = 137.67
  34. ; 96kbps = 1789772.5/12000 = 149.14
  35. ; 88kbps = 1789772.5/11000 = 162.70
  36. ; 80kbps = 1789772.5/10000 = 178.97
  37. ; 72kbps = 1789772.5/09000 = 198.86
  38. ; 64kbps = 1789772.5/08000 = 223.72
  39. ; 56kbps = 1789772.5/07000 = 255.68
  40. ; 48kbps = 1789772.5/06000 = 298.29
  41. ; 40kbps = 1789772.5/05000 = 357.95
  42. ; 32kbps = 1789772.5/04000 = 447.44
  43. ; 24kbps = 1789772.5/03000 = 596.59
  44. ; 16kbps = 1789772.5/02000 = 894.88
  45. ;  8kbps = 1789772.5/01000 = 1789.77

  46. ;========================================
  47. ;比特率设置(32,40,48,56,64,72,80,96,112,128,144,160,192,224,240,256,320)
  48. KBPS = 72
  49. ;========================================
  50. PCM_Data_L = $80                ;数据低位
  51. PCM_Data_H = PCM_Data_L + $01   ;数据高位
  52. Bank_L = PCM_Data_H + $01   ;Bank索引低位
  53. Bank_H = Bank_L + $01       ;Bank索引高位
  54. Play_Speed = Bank_H + $01       ;播放速率
  55. ;============================================================
  56. FC_Data_L   = Play_Speed + 1                    ;数据地址低位
  57. FC_Data_H   = FC_Data_L+$01                     ;数据地址高位
  58. FC_Data_Cnt = FC_Data_H+$01                         ;数据计数
  59. ;============================================================
  60. FC_PPU_Buffer = $0200                            ;PPU缓冲地址
  61. FC_PPU_Status = FC_PPU_Buffer+$C0                ;PPU显示状态
  62. FC_PPU_Cursor = FC_PPU_Status + $01          ;当前PPU缓冲位置
  63. FC_PPU_Addr_L = FC_PPU_Cursor + $01              ;PPU地址低位
  64. FC_PPU_Addr_H = FC_PPU_Addr_L + $01              ;PPU地址高位
  65. ;========================================
  66. ;CPU播放周期
  67. .IF KBPS == 32
  68. INIT_SPEED = $54
  69. .ENDIF

  70. .IF KBPS == 40
  71. INIT_SPEED = $42
  72. .ENDIF

  73. .IF KBPS == 48
  74. INIT_SPEED = $36
  75. .ENDIF

  76. .IF KBPS == 56
  77. INIT_SPEED = $2E
  78. .ENDIF

  79. .IF KBPS == 64
  80. INIT_SPEED = $27
  81. .ENDIF

  82. .IF KBPS == 72
  83. INIT_SPEED = $22
  84. .ENDIF

  85. .IF KBPS == 80
  86. INIT_SPEED = $1E
  87. .ENDIF

  88. .IF KBPS == 96
  89. INIT_SPEED = $18
  90. .ENDIF

  91. .IF KBPS == 112
  92. INIT_SPEED = $14
  93. .ENDIF

  94. .IF KBPS == 128
  95. INIT_SPEED = $11
  96. .ENDIF

  97. .IF KBPS == 144
  98. INIT_SPEED = $0E
  99. .ENDIF

  100. .IF KBPS == 160
  101. INIT_SPEED = $0C
  102. .ENDIF

  103. .IF KBPS == 192
  104. INIT_SPEED = $09
  105. .ENDIF

  106. .IF KBPS == 224
  107. INIT_SPEED = $07
  108. .ENDIF

  109. .IF KBPS == 240
  110. INIT_SPEED = $06
  111. .ENDIF

  112. .IF KBPS == 256
  113. INIT_SPEED = $06
  114. .ENDIF

  115. .IF KBPS == 320
  116. INIT_SPEED = $03
  117. .ENDIF

  118. ;========================================
  119. ;指令延迟
  120. DELAY_2 .MACRO
  121. NOP
  122. .ENDM

  123. DELAY_3 .MACRO
  124. LDA $00
  125. .ENDM

  126. DELAY_4 .MACRO
  127. NOP
  128. NOP
  129. .ENDM

  130. DELAY_5 .MACRO
  131. NOP
  132. LDA $00
  133. .ENDM

  134. DELAY_6 .MACRO
  135. NOP
  136. NOP
  137. NOP
  138. .ENDM

  139. DELAY_7 .MACRO
  140. NOP
  141. NOP
  142. LDA $00
  143. .ENDM
  144. ;========================================
  145. .ORG $FC00
  146. ;========================================
  147. ResetProcess:                   ;程序开始
  148. SEI
  149. CLD
  150. LDX #$FF
  151. TXS
  152. LDA #$10
  153. STA $2000
  154. LDA #$00
  155. STA $2001
  156. LDA #$00
  157. STA $5010

  158. ResetDelay:
  159. LDA $2002
  160. BPL ResetDelay
  161. LDA $2002
  162. BMI ResetDelay

  163. ;========================================
  164. RamInit:                      ;内存初始化
  165. LDX #$00
  166. TXA
  167. STA $00
  168. STA $01
  169. LDY #$00
  170. RamInitSet:
  171. STA ($00),Y
  172. INY
  173. BNE RamInitSet
  174. INC $01
  175. INX
  176. CPX #$08
  177. BCC RamInitSet

  178. ;========================================
  179. PaletteClear:                 ;调色板清空
  180. LDA #$3F
  181. STA $2006
  182. LDA #$00
  183. STA $2006
  184. LDX #$00
  185. PaletteClearSet:
  186. LDA PaletteData,X
  187. STA $2007
  188. INX
  189. CPX #$20
  190. BCC PaletteClearSet

  191. ;========================================
  192. PortInit:                     ;端口初始化
  193. LDA #$00
  194. STA $5105
  195. LDA #$03
  196. STA $5100
  197. LDA #$80
  198. STA $5114
  199. LDA #INIT_SPEED
  200. STA Play_Speed

  201. LDA #$01
  202. STA $5101
  203. LDA #$00
  204. STA $5130
  205. LDA #$00
  206. STA $512B
  207. STA $5127
  208. LDA #$00
  209. STA $5130
  210. LDA #$01
  211. STA $5123

  212. LDA #$0E
  213. STA FC_PPU_Status
  214. JSR WriteText

  215. ;========================================
  216. PrgInit:                       ;Prg初始化
  217. LDA #$00
  218. STA PCM_Data_L
  219. LDA #$80
  220. STA PCM_Data_H
  221. LDA #$00
  222. STA Bank_L
  223. STA Bank_H
  224. LDY #$00
  225. ;========================================
  226. PlayPrgData:                 ;播放PRG数据
  227. LDX Play_Speed
  228. PlayPrgDataDelay:
  229. DEX
  230. BNE PlayPrgDataDelay

  231. .IF KBPS == 32
  232. DELAY_3
  233. .ENDIF

  234. .IF KBPS == 40
  235. DELAY_4
  236. .ENDIF

  237. .IF KBPS == 48
  238. DELAY_4
  239. .ENDIF

  240. .IF KBPS == 56
  241. DELAY_2
  242. .ENDIF

  243. .IF KBPS == 64
  244. DELAY_5
  245. .ENDIF

  246. .IF KBPS == 72
  247. DELAY_5
  248. .ENDIF

  249. .IF KBPS == 80
  250. DELAY_5
  251. .ENDIF

  252. .IF KBPS == 96
  253. DELAY_5
  254. .ENDIF

  255. .IF KBPS == 112
  256. DELAY_4
  257. .ENDIF

  258. .IF KBPS == 128
  259. DELAY_3
  260. .ENDIF

  261. .IF KBPS == 144
  262. DELAY_5
  263. .ENDIF

  264. .IF KBPS == 160
  265. DELAY_5
  266. .ENDIF

  267. .IF KBPS == 192
  268. DELAY_6
  269. .ENDIF

  270. .IF KBPS == 224
  271. DELAY_5
  272. .ENDIF

  273. .IF KBPS == 240
  274. DELAY_6
  275. .ENDIF

  276. .IF KBPS == 256
  277. DELAY_2
  278. .ENDIF

  279. .IF KBPS == 320
  280. DELAY_6
  281. .ENDIF

  282. LDA (PCM_Data_L),Y
  283. STA $5011
  284. PlayPrgDataCount:
  285. INY
  286. BNE PlayPrgDataSet
  287. INC PCM_Data_H
  288. PlayPrgDataSet:
  289. LDA PCM_Data_H
  290. CMP #$A0
  291. BNE PlayPrgData
  292. INC Bank_L
  293. LDA Bank_L
  294. CMP #$7F
  295. BEQ ChrInit
  296. ORA #$80
  297. STA $5114
  298. LDA #$80
  299. STA PCM_Data_H
  300. BNE PlayPrgData

  301. ;========================================
  302. ChrInit:                       ;Chr初始化
  303. LDA #$01
  304. STA Bank_L
  305. LDA #$00
  306. STA PCM_Data_H
  307. STA $2001
  308. LDA $2002
  309. LDA #$00
  310. STA $2006
  311. STA $2006
  312. LDA $2007
  313. ;========================================
  314. PlayChrData:                 ;播放CHR数据
  315. LDX Play_Speed
  316. PlayChrDataDelay:
  317. DEX
  318. BNE PlayChrDataDelay

  319. .IF KBPS == 32
  320. DELAY_4
  321. .ENDIF

  322. .IF KBPS == 40
  323. DELAY_5
  324. .ENDIF

  325. .IF KBPS == 48
  326. DELAY_5
  327. .ENDIF

  328. .IF KBPS == 56
  329. DELAY_3
  330. .ENDIF

  331. .IF KBPS == 64
  332. DELAY_6
  333. .ENDIF

  334. .IF KBPS == 72
  335. DELAY_6
  336. .ENDIF

  337. .IF KBPS == 80
  338. DELAY_6
  339. .ENDIF

  340. .IF KBPS == 96
  341. DELAY_6
  342. .ENDIF

  343. .IF KBPS == 112
  344. DELAY_5
  345. .ENDIF

  346. .IF KBPS == 128
  347. DELAY_4
  348. .ENDIF

  349. .IF KBPS == 144
  350. DELAY_6
  351. .ENDIF

  352. .IF KBPS == 160
  353. DELAY_6
  354. .ENDIF

  355. .IF KBPS == 192
  356. DELAY_7
  357. .ENDIF

  358. .IF KBPS == 224
  359. DELAY_6
  360. .ENDIF

  361. .IF KBPS == 240
  362. DELAY_7
  363. .ENDIF

  364. .IF KBPS == 256
  365. DELAY_3
  366. .ENDIF

  367. .IF KBPS == 320
  368. DELAY_7
  369. .ENDIF

  370. LDA $2007
  371. STA $5011
  372. PlayChrDataCount:
  373. INY
  374. BNE PlayChrDataSet
  375. INC PCM_Data_H
  376. PlayChrDataSet:
  377. LDA PCM_Data_H
  378. CMP #$10
  379. BNE PlayChrData
  380. INC Bank_L
  381. BNE PlayChrDataBankSet
  382. INC Bank_H
  383. LDA Bank_H
  384. CMP #$02
  385. BEQ PlayOver
  386. PlayChrDataBankSet:
  387. LDA Bank_H
  388. STA $5130
  389. LDA Bank_L
  390. STA $5123
  391. LDA #$00
  392. STA $2006
  393. STA $2006
  394. STA PCM_Data_H
  395. LDA $2002
  396. LDA $2007
  397. LDA #$00
  398. BEQ PlayChrData

  399. ;========================================
  400. PlayOver:                       ;播放结束
  401. JMP ($FFFC)

  402. ;========================================
  403. MODE_CNTL = $FB               ;行写入模式
  404. MODE_CNTC = $FC               ;行清除模式
  405. MODE_CNTN = $FD               ;行转行模式
  406. MODE_CNTS = $FE         ;转行空格写入模式
  407. ;----------------------------------------
  408. FC_PPU_Process:                  ;PPU处理
  409. LDA FC_PPU_Buffer
  410. BEQ FC_PPU_Process_End
  411. JSR FC_PPU_Process_Beg
  412. FC_PPU_Process_End:
  413. LDA #$00
  414. STA FC_PPU_Buffer
  415. STA $2006
  416. STA $2006
  417. STA $2005
  418. STA $2005
  419. LDA FC_PPU_Status
  420. STA $2001
  421. RTS

  422. ;----------------------------------------
  423. FC_PPU_Process_Beg:             ;处理开始
  424. LDX FC_PPU_Cursor
  425. LDA #$00
  426. STA $2001
  427. STA FC_PPU_Buffer,X
  428. STA FC_PPU_Cursor
  429. LDX #$FF
  430. ;----------------------------------------
  431. FC_PPU_Mode_Select:             ;模式选择
  432. INX
  433. LDA FC_PPU_Buffer,X
  434. CMP #MODE_CNTL
  435. BEQ FC_PPU_Mode_CountLine
  436. CMP #MODE_CNTC
  437. BEQ FC_PPU_Mode_CountClear
  438. CMP #MODE_CNTN
  439. BEQ FC_PPU_Mode_CountNext
  440. CMP #MODE_CNTS
  441. BEQ FC_PPU_Mode_CountSpace
  442. RTS

  443. ;----------------------------------------
  444. FC_PPU_Mode_CountLine:        ;行写入模式
  445. JSR FC_PPU_Set_Addr
  446. LDY FC_PPU_Buffer,X
  447. FC_PPU_CountLine_Write:
  448. INX
  449. LDA FC_PPU_Buffer,X
  450. STA $2007
  451. DEY
  452. BNE FC_PPU_CountLine_Write
  453. JMP FC_PPU_Mode_Select

  454. ;----------------------------------------
  455. FC_PPU_Mode_CountClear:       ;行清除模式
  456. JSR FC_PPU_Write_Addr
  457. LDY FC_PPU_Buffer,X
  458. LDA #$00
  459. FC_PPU_CountClear_Write:
  460. STA $2007
  461. DEY
  462. BNE FC_PPU_CountClear_Write
  463. JMP FC_PPU_Mode_Select

  464. ;----------------------------------------
  465. FC_PPU_Mode_CountNext:      ;转行写入模式
  466. JSR FC_PPU_Set_Next
  467. FC_PPU_CountNext_Write:
  468. LDA FC_PPU_Addr_H
  469. STA $2006
  470. LDA FC_PPU_Addr_L
  471. STA $2006
  472. INX
  473. LDY FC_PPU_Buffer,X
  474. JMP FC_PPU_CountLine_Write

  475. ;----------------------------------------
  476. FC_PPU_Mode_CountSpace: ;    空格写入模式
  477. INX
  478. LDA FC_PPU_Addr_L
  479. AND #$E0
  480. CLC
  481. ADC FC_PPU_Buffer,X
  482. STA FC_PPU_Addr_L
  483. BCC FC_PPU_Mode_CountSpace_Write
  484. INC FC_PPU_Addr_H
  485. FC_PPU_Mode_CountSpace_Write:
  486. LDA FC_PPU_Addr_H
  487. STA $2006
  488. LDA FC_PPU_Addr_L
  489. STA $2006
  490. INX
  491. LDY FC_PPU_Buffer,X
  492. JMP FC_PPU_CountLine_Write

  493. ;----------------------------------------
  494. FC_PPU_Set_Addr:                ;写入地址
  495. INX
  496. LDA FC_PPU_Buffer,X
  497. STA FC_PPU_Addr_H
  498. STA $2006
  499. INX
  500. LDA FC_PPU_Buffer,X
  501. STA FC_PPU_Addr_L
  502. STA $2006
  503. INX
  504. RTS

  505. ;----------------------------------------
  506. FC_PPU_Write_Addr:              ;写入地址
  507. INX
  508. LDA FC_PPU_Buffer,X
  509. STA $2006
  510. INX
  511. LDA FC_PPU_Buffer,X
  512. STA $2006
  513. INX
  514. RTS

  515. ;----------------------------------------
  516. FC_PPU_Set_Next:                ;地址转行
  517. LDA FC_PPU_Addr_L
  518. CLC
  519. ADC #$20
  520. STA FC_PPU_Addr_L
  521. BCC FC_PPU_Set_Next_End
  522. INC FC_PPU_Addr_H
  523. FC_PPU_Set_Next_End:
  524. RTS

  525. ;==================================================
  526. FC_PPU_Source_Write_Buffer:        ;写入PPU缓冲数据
  527. LDA (FC_Data_L),Y
  528. STA FC_PPU_Buffer,X
  529. INX
  530. INY
  531. RTS

  532. ;========================================
  533. SRC_MODE_NULL  = $FF      ;无地址写入模式
  534. ;----------------------------------------
  535. FC_PPU_Write_Source:          ;源数据写入
  536. PHA
  537. TXA
  538. PHA
  539. TYA
  540. PHA
  541. LDX FC_PPU_Cursor
  542. LDY #$00
  543. LDA FC_Data_Cnt
  544. STY FC_Data_Cnt
  545. INC FC_Data_Cnt
  546. CMP #SRC_MODE_NULL
  547. BNE FC_PPU_Write_Line
  548. JSR FC_PPU_Source_Write_Buffer
  549. STA FC_Data_Cnt
  550. FC_PPU_Write_Source_Set:
  551. JSR FC_PPU_Source_Write_Buffer
  552. DEC FC_Data_Cnt
  553. BNE FC_PPU_Write_Source_Set
  554. FC_PPU_Write_Line:
  555. LDA (FC_Data_L),Y
  556. CMP #MODE_CNTL
  557. BNE FC_PPU_Write_Next
  558. JSR FC_PPU_Source_Write_Buffer
  559. JSR FC_PPU_Source_Write_Buffer
  560. JSR FC_PPU_Source_Write_Buffer
  561. JSR FC_PPU_Source_Write_Buffer
  562. STA FC_Data_Cnt
  563. BNE FC_PPU_Write_Source_Set
  564. FC_PPU_Write_Next:
  565. CMP #MODE_CNTN
  566. BNE FC_PPU_Write_Space
  567. JSR FC_PPU_Source_Write_Buffer
  568. JSR FC_PPU_Source_Write_Buffer
  569. STA FC_Data_Cnt
  570. BNE FC_PPU_Write_Source_Set
  571. FC_PPU_Write_Space:
  572. CMP #MODE_CNTS
  573. BNE FC_PPU_Write_Clear
  574. JSR FC_PPU_Source_Write_Buffer
  575. JSR FC_PPU_Source_Write_Buffer
  576. JSR FC_PPU_Source_Write_Buffer
  577. STA FC_Data_Cnt
  578. BNE FC_PPU_Write_Source_Set
  579. FC_PPU_Write_Clear:
  580. CMP #MODE_CNTC
  581. BNE FC_PPU_Write_Source_End
  582. JSR FC_PPU_Source_Write_Buffer
  583. JSR FC_PPU_Source_Write_Buffer
  584. BNE FC_PPU_Write_Line
  585. FC_PPU_Write_Source_End:
  586. STX FC_PPU_Cursor
  587. LDA #$00
  588. STA FC_Data_Cnt
  589. PLA
  590. TAY
  591. PLA
  592. TAX
  593. PLA
  594. RTS

  595. ;========================================
  596. WriteText:                      ;写入文本
  597. LDA #<TtileText
  598. STA FC_Data_L
  599. LDA #>TtileText
  600. STA FC_Data_H
  601. LDA #$00
  602. STA FC_Data_Cnt
  603. JSR FC_PPU_Write_Source
  604. JSR FC_PPU_Process
  605. LDA #<WaveInfo
  606. STA FC_Data_L
  607. LDA #>WaveInfo
  608. STA FC_Data_H
  609. LDA #$00
  610. STA FC_Data_Cnt
  611. JSR FC_PPU_Write_Source
  612. JSR FC_PPU_Process
  613. RTS

  614. ;========================================
  615. PaletteData:
  616. .DB $0F,$24,$24,$24,$0F,$24,$24,$24,$0F,$24,$24,$24,$0F,$24,$24,$24
  617. .DB $0F,$24,$24,$24,$0F,$24,$24,$24,$0F,$24,$24,$24,$0F,$24,$24,$24

  618. ;========================================
  619. TtileText:                      ;标题文字
  620. .DB MODE_CNTL,$20,$A8
  621. .STR "WAVE FILE PLAYER"
  622. .DB MODE_CNTS,$46
  623. .STR "MAKE BY FLAMECYCLONE"
  624. .DB MODE_CNTS,$4B
  625. .STR "2021.03.03"
  626. .DB $FF
  627. ;========================================
  628. WaveInfo:                      ;标题文字
  629. .DB MODE_CNTL,$21,$C4
  630. .STR "NAME: ZHUO NI QIU"
  631. .DB MODE_CNTS,$44
  632. .STR "YEAR: 1997"
  633. .DB MODE_CNTS,$44
  634. .STR "ARTIST: ZHUO YI TING"
  635. .DB MODE_CNTS,$44
  636. .STR "DURATION: 02:37"
  637. .DB MODE_CNTS,$44
  638. .STR "BIT RATE: 160KBPS"
  639. .DB $FF

  640. ;========================================
  641. .ORG $FFEF
  642. NmiProcess:
  643. RTI

  644. .ORG $FFFA

  645. NMI:
  646. .DB <NmiProcess
  647. .DB >NmiProcess

  648. RESET:
  649. .DB <ResetProcess
  650. .DB >ResetProcess

  651. IRQ:
  652. .DB <NmiProcess
  653. .DB >NmiProcess


复制代码



快点告诉你_192kbps.zip (2.33 MB, 下载次数: 35)

签到天数: 365 天

[LV.9]以坛为家II

发表于 2021-3-4 03:25:15 | 显示全部楼层
技术啊
回复

使用道具 举报

签到天数: 881 天

[LV.10]以坛为家III

发表于 2021-3-4 11:18:26 | 显示全部楼层
音乐好听,高手厉害。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-3-4 15:32:06 | 显示全部楼层
不明觉厉支持
回复 支持 反对

使用道具 举报

签到天数: 603 天

[LV.9]以坛为家II

发表于 2021-3-5 02:57:34 | 显示全部楼层
楼主 高手 能做个傻瓜软件吗,不会编程啊....
简单选取N首pcm音源,一点按钮 就能生成nes文件....
回复 支持 反对

使用道具 举报

签到天数: 11 天

[LV.3]偶尔看看II

发表于 2021-4-1 13:12:51 | 显示全部楼层
不明觉厉,拿走研究啦,感谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|琵琶行论坛 ( 赣ICP备12000882号 )

GMT+8, 2021-4-22 05:11 , Processed in 0.021277 second(s), 8 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表