Accueil
Musique
Graphisme
Electronique

perbal.net

Liens

Email: Contact
Facebook Facebook
Behance Behance
SoundCloud SoundCloud

 

3D Pixel Art
Drumtraks Schematics
Thévenin
Statistiques Winamp

Bienvenue sur perbal.net
posté le 06.02.08

Cliquez sur les rubriques de gauche pour accéder directement aux informations qui vous intéressent.

3D Pixel Art
posté le 05.10.2014, mis à jour le 16.10.2023

Creative Commons Licence
3D Pixel Art by Bernard Perbal is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Moog Mother-32Two Moog Mother-32Three Moog Mother-32

TB-303 and MXR Distortion+Akai MPC60Roland MKS-7

MacBeth Micromac-DTeenage Engineering Pocket Operator PO-12 RhythmRoland TR-77

Roland TR-77VRoland TR-33Roland TR-55

Roland TR-330Roland TR-700Roland TR-66

Roland TR-808Roland TR-606Roland TR-909

Roland TR-707Roland TR-727Roland TR-505

Roland TR-626Roland TR-8Roland TR-09

Roland TR-08Roland TR-8SRoland TR-6S

Roland TR-06

Quelques équipements de mon home studio réalisés en pixel art isométrique : Moog Mother-32 avec support 2 niveaux et 3 niveaux, Roland TB-303 and MXR Distortion+, Akai MPC60, Roland MKS-7, MacBeth Micromac-D, Teenage Engineering Pocket Operator TO-12 Rhythm, Roland TR-77, Roland TR-77V, Roland TR-33, Roland TR-55, Roland TR-330, Roland TR-700, Roland TR-66, Roland TR-808, Roland TR-606, Roland TR-909, Roland TR-707, Roland TR-727, Roland TR-505, Roland TR-626, Roland TR-8, Roland TR-09, Roland TR-08, Roland TR-8S, Roland TR-6S, Roland TR-06.

Sequential Circuits Drumtraks - Correction of I/O Address Annotations in the Service Manual
posted on 04 June 2026, updated on 09 June 2026

Summary

During reverse-engineering and hardware verification of a Sequential Circuits Drumtraks, I found that the I/O address annotations printed on the commonly circulated schematic appear to be incorrect.

The actual hardware decoding performed by U214 (74LS138) does not match the annotated addresses shown on the schematic.

This conclusion is based on:

  • Continuity measurements on a real Drumtraks motherboard.
  • Verification of the LS138 address decoder wiring.
  • Verification of all LS138 output destinations.
  • Analysis of the OS v0.5 ROM.
  • Analysis of the keyboard/LED scan circuitry built around the 4099 latches.

Hardware Verification

U214 Address Decoder

U214 is a HD74LS138P (standard 74LS138).

Continuity measurements performed directly on the motherboard confirm:

U214 Pin Function Connected To
1 A Z80 A2 (pin 32)
2 B Z80 A3 (pin 33)
3 C Z80 A4 (pin 34)
6 G1 Z80 A7 (pin 37)
5 /G2B Z80 /M1 through LS04 inverter

The /M1 path was verified:

Z80 pin 27 (/M1)
    →
74LS04 pin 5
74LS04 pin 6
    →
U214 pin 5 (/G2B)

Therefore the LS138 is enabled only during I/O cycles and not during instruction fetches.

LS138 Output Verification

Continuity measurements confirm:

LS138 Output Pin Signal
Y0 15 /OLEDS
Y1 14 /OSINK
Y2 13 /ODAC
Y3 12 /OTRIGB
Y4 11 /OTRIGA
Y5 10 /OMISC
Y6 9 /OSHMUX
Y7 7 /OCNTR

All outputs were verified on the physical motherboard.

LS138 Truth Table

Because:

A = Z80 A2
B = Z80 A3
C = Z80 A4

and because the 74LS138 selects outputs according to:

C B A Output
0 0 0 Y0
0 0 1 Y1
0 1 0 Y2
0 1 1 Y3
1 0 0 Y4
1 0 1 Y5
1 1 0 Y6
1 1 1 Y7

the actual decoded ports are:

Address Function
E0 /OLEDS
E4 /OSINK
E8 /ODAC
EC /OTRIGB
F0 /OTRIGA
F4 /OMISC
F8 /OSHMUX
FC /OCNTR

Note that A6, A5, A1 and A0 are not decoded.

Therefore each function responds to multiple port addresses.

The addresses shown above are simply the canonical addresses used by the firmware.

Comparison with Published Schematic Annotations

Many copies of the Drumtraks schematic contain annotations similar to:

/OSHMUX @ E4H
/OMISC  @ E8H
/OTRIGA @ ECH
/OTRIGB @ F0H
/OSINK  @ F8H
/OLEDS  @ FCH

These annotations are inconsistent with the verified hardware decoding.

The corrected table is:

Signal Annotated Address Verified Address
/OLEDS FCH E0H
/OSINK F8H E4H
/ODAC F4H E8H
/OTRIGB F0H ECH
/OTRIGA ECH F0H
/OMISC E8H F4H
/OSHMUX E4H F8H
/OCNTR E0H FCH

Probable Cause of the Error

The annotated addresses appear to have been calculated assuming:

LS138 A <- A4
LS138 B <- A3
LS138 C <- A2

while the actual motherboard wiring is:

LS138 A <- A2
LS138 B <- A3
LS138 C <- A4

This produces exactly the observed reversal.

ROM Analysis (OS v0.5)

The ROM starts with:

0000: 3E 0F      LD A,0FH
0002: D3 E4      OUT (E4H),A
0004: ED 56      IM 1

Initially this seemed to suggest that E4H must correspond to /OSHMUX.

However hardware verification proves that:

E4H → /OSINK

The first firmware output therefore targets the keyboard/LED scan circuitry.

Understanding the First OUT (E4H)

/OSINK drives the W/D (Write/Disable) inputs of two addressable latches:

U105 = 4099
U107 = 4099

The byte written to E4H is decoded as:

0FH = 00001111

For U107:

Address = 111
Data    = 1

Therefore:

Q7 <- 1

A particularly interesting detail is that:

Q7(U107)
    →
RES(U105)
RES(U107)

Thus the first firmware output immediately establishes a known reset state for the scan latches.

This makes far more sense than the previous assumption that E4H controlled the sample-and-hold multiplexer.

Conclusion

The physical motherboard, continuity measurements, LS138 truth table, and firmware analysis all support the following I/O map:

Port Function Hardware Controlled
E0H OLEDS Two 4042 latch circuits (U102 and U103) driving the LED matrix
E4H OSINK Two 4099 addressable latches controlling the LED matrix (U105) and switch matrix (U107)
E8H ODAC 7524 DAC digital-to-analog converter (U226)
ECH OTRIGB Hex D-type Flip-Flop 4174 - Trigger Latch B (U219)
F0H OTRIGA Hex D-type Flip-Flop 4174 - Trigger Latch A (U217)
F4H OMISC Hex D-type Flip-Flop 4174 - Misc Output Latch (U216)
F8H OSHMUX Hex D-type Flip-Flop 4174 - Sample & Hold Address / Strobe Latch (U218)
FCH‑FFH OCNTR Intel 8253 Programmable Interval Timer (U211)

The commonly circulated schematic annotations appear to contain a systematic reversal of the LS138 address bit order.

Additional Note Regarding the 8253 Timer (U211)

Unlike the other decoded devices, the Intel 8253 Programmable Interval Timer occupies four consecutive I/O addresses:

Address Function
FCH Counter 0
FDH Counter 1
FEH Counter 2
FFH Control Register

This is possible because the LS138 output OCNTR only generates the chip-select signal for U211.

The lower address bits A0 and A1 are connected directly to the 8253 address inputs and are therefore used internally by the timer to select one of its four registers.

Consequently, all addresses from FCH through FFH activate the same device (U211), while the specific operation performed depends on the values present on address lines A0 and A1.

This behavior differs from the other Drumtraks I/O devices, which ignore address lines A0 and A1 and therefore respond identically to all four addresses within their decoded address range.

Observations Regarding U212 (74LS04)

During the verification process, an additional discrepancy was found between the published schematic annotations and the actual motherboard wiring around U212 (74LS04).

Continuity measurements confirmed:

Z80 pin 27 (/M1)
    →
U212 pin 5
U212 pin 6
    →
U214 pin 5 (/G2B)

and:

U216 pin 12
    →
U212 pin 13
U212 pin 12
    →
CC OUT (via R222)

The available schematic annotations appear to interchange these two inverter sections.

While this discrepancy does not affect circuit operation, it demonstrates that some annotations in the available documentation should be independently verified against the physical hardware.

Exemple de schéma équivalent Thévenin dans le livre The Art Of Electronics de Horowitz and Hill
posté le 30.05.26

L'ouvrage The Art of Electronics de Paul Horowitz et Winfield Hill est largement considéré comme une référence incontournable en électronique pratique. Son premier chapitre présente les notions fondamentales relatives aux résistances et aux sources de tension.

La sous-section 1.2.5 est consacrée au théorème de Thévenin, selon lequel tout réseau linéaire composé de résistances et de sources de tension peut être remplacé par un circuit équivalent constitué d'une unique source de tension VTh en série avec une unique résistance RTh.

Le théorème s'applique aux réseaux linéaires. Les circuits comportant des composants non linéaires (diodes, transistors en régime non linéaire, etc.) nécessitent des précautions supplémentaires.

RTh représente la résistance interne vue depuis les bornes de sortie du réseau. Elle traduit la capacité du circuit à fournir du courant sans que sa tension ne s'effondre.

Ce principe est illustré par le schéma ci-après, lequel ne correspond pas à un montage réel ayant une utilité pratique particulière.

Il m'a semblé intéressant, à titre d'exercice, de déterminer l'équivalent de Thévenin (VTh et RTh) de ce réseau en attribuant arbitrairement des valeurs à chacun de ses composants.

A cette fin, les résistances R1 à R10 seront définies avec des valeurs comprises entre 100 Ω et 1000 Ω. De même, les tensions des sources V1 à V6 seront comprises entre 1 V et 6 V, en respectant les polarités indiquées sur le schéma.

L'équivalent de Thévenin sera calculé entre les points A et B. Pour faciliter les calculs, le potentiel de référence (0 V) sera arbitrairement placé au point E.

Première étape : calcul de la résistance équivalente RTh. Pour cela, il suffit de remplacer toutes les sources de tension par des conducteurs parfaits (résistance nulle), puis de remplacer les associations de résistances en série ou en parallèle par leurs résistances équivalentes.

En réduisant les groupes de résistances en parallèle à leur résistance équivalente, nous obtenons :

Ensuite, nous allons transformer les trois résistances de droite, disposées en triangle (800 Ω, 900 Ω et 1000 Ω), en leur équivalent en étoile. Nous obtenons alors :

Ce qui donne :

En additionnant les valeurs de toutes ces résistances, nous obtenons la valeur de la résistance équivalente de Thévenin :

RTh = 631,9 Ω

Pour le calcul de la source de tension équivalente de Thévenin, nous allons conserver la transformation des trois résistances de 800 Ω, 900 Ω et 1000 Ω en leur équivalent en étoile. Le nouveau circuit est le suivant :

Notons que la tension au point situé entre les deux résistances de 266,7 Ω et 296,3 Ω est égale à la tension du point B, car ce point n'est relié à aucun élément du circuit. Aucun courant ne circule donc dans la résistance de 333,3 Ω.

Les tensions des points suivants sont facilement établies :

VE = 0.000 V Réf
VD = 5.000 V
VC = 1.000 V VE - 4 V
VI = 2.000 V VC + 1 V
VH = 0.000 V VI - 2 V

Au point A, nous avons :

En remplaçant les valeurs connues de VH et VC, nous trouvons VA :

VA = 0.667 V

Notons les points suivants :

VG = VF + 6
VJ = VK + 3

Au point K, nous avons :

Exprimons VK en fonction de VB :

Au point G, nous avons :

Exprimons VG en fonction de VB :

Au point B, nous avons :

En remplaçant les valeurs de VK et VG, calculées ci-dessus, nous trouvons la valeur de VB : 1.872 V

La valeur de la tension équivalente de Thévenin est donnée par VTh = VA - VB.

L'équivalent de Thévenin de ce circuit est donné par les valeurs suivantes :

VTh = -1,206 V
RTh = 631,9 Ω

Statistiques Winamp
posté le 03.01.09

Statistiques des morceaux joués avec Winamp depuis le 26.12.08

Artiste : ASC
Cumul des Morceaux Joués : 966
Nombre De Morceaux : 211
Taux : 4.58
 
Morceaux Joués :
ASC - Outflow joué 19 fois
ASC - Flood Tide Rising joué 15 fois
ASC - Symbol #1.3 joué 13 fois
ASC - Textura joué 13 fois
ASC - Fade Away Sessions joué 13 fois
ASC - Dream Of The Future joué 12 fois
ASC - Continuity joué 11 fois
ASC - Varuna joué 11 fois
ASC - Chaos joué 11 fois
ASC - Typhon joué 11 fois
ASC - Sun Storm joué 11 fois
ASC - Opus joué 11 fois
ASC - Aqualoop joué 10 fois
ASC - Varda joué 10 fois
ASC - Midnight joué 10 fois
ASC - Losing You joué 10 fois
ASC - Sarang joué 9 fois
ASC - Esper joué 9 fois
ASC - TMA-1 joué 9 fois
ASC - Huya joué 9 fois
ASC - Mors-Somnus joué 9 fois
ASC - Endless Blue joué 9 fois
ASC - Linking Tunnels joué 9 fois
ASC - Symbol #1.2 joué 9 fois
ASC - The Depths joué 9 fois
ASC - Absent Mind joué 9 fois
ASC - Redshift joué 8 fois
ASC - Blueshift joué 8 fois
ASC - Sequence 9 joué 8 fois
ASC - Impasse joué 8 fois
ASC - The Alchemist joué 8 fois
ASC - Citrus joué 8 fois
ASC - Saturnine joué 8 fois
ASC - Conversations joué 8 fois
ASC - The Ubiquity Incident joué 8 fois
ASC - Yatta joué 8 fois
ASC - Seamounts joué 7 fois
ASC - Kelp Forest joué 7 fois
ASC - Echo Location joué 7 fois
ASC - Marine Layer joué 7 fois
ASC - Sequence 11 joué 7 fois
ASC - Neptune joué 7 fois
ASC - Ghost Train joué 7 fois
ASC - Empty Words joué 6 fois
ASC - Oak - Otaku (ASC Remix) joué 6 fois
ASC - Lucid Dream joué 6 fois
ASC - Artificial Life joué 6 fois
ASC - Voyager joué 6 fois
ASC - Hadal Zone joué 6 fois
ASC - Sequence 5 joué 6 fois
ASC - Last Known Coordinates joué 6 fois
ASC - Sedna joué 6 fois
ASC - Dysnomia joué 6 fois
ASC - Advance joué 6 fois
ASC - Emerge joué 6 fois
ASC - Polynomial joué 6 fois
ASC - Matter Of Time joué 6 fois
ASC - Microsia joué 6 fois
ASC - Realisations joué 5 fois
ASC - Safety In Numbers joué 5 fois
ASC - Find Yourself joué 5 fois
ASC - Fireflies joué 5 fois
ASC - Substance joué 5 fois
ASC - Deucalion joué 5 fois
ASC - Ocean Shadow joué 5 fois
ASC - Source Code joué 5 fois
ASC - Collider joué 5 fois
ASC - Sequence 3 joué 5 fois
ASC - Sequence 10 joué 5 fois
ASC - Quaoar joué 5 fois
ASC - Eris joué 5 fois
ASC - Ceres joué 5 fois
ASC - Monsoon joué 5 fois
ASC - Cosm joué 5 fois
ASC - Gestures joué 5 fois
ASC - Confined Spaces joué 5 fois
ASC - Biscayne joué 5 fois
ASC - Entelechy joué 5 fois
ASC - 3rd Eye joué 5 fois
ASC - Lost For Words joué 5 fois
ASC - Reticence joué 4 fois
ASC - Southern Cross joué 4 fois
ASC - Dimensions joué 4 fois
ASC - Seadrift joué 4 fois
ASC - Common Ground joué 4 fois
ASC - Forever joué 4 fois
ASC - After Dark joué 4 fois
ASC - Coriolis Effect joué 4 fois
ASC - Departure joué 4 fois
ASC - Nautical Depths joué 4 fois
ASC - Sidereal joué 4 fois
ASC - Sequence 7 joué 4 fois
ASC - Ground Tracer joué 4 fois
ASC - Orbiting Satellites joué 4 fois
ASC - Sequence 12 joué 4 fois
ASC - Sequence 1 joué 4 fois
ASC - Broadside joué 4 fois
ASC - Loophole joué 4 fois
ASC - Ixion joué 4 fois
ASC - Point Of Origin joué 4 fois
ASC - Orcus joué 4 fois
ASC - Crystal Moon joué 4 fois
ASC - Carrier Signal joué 4 fois
ASC - Suncycle joué 4 fois
ASC - Arc joué 4 fois
ASC - Sunspots (i. Event #1, ii. Event #2, iii. Event #3) joué 4 fois
ASC - Rare Earth joué 4 fois
ASC - Isthmus joué 4 fois
ASC - Stolen Memories joué 4 fois
ASC - Another Late Night joué 4 fois
ASC - Wave Upon Wave joué 4 fois
ASC - Neon joué 4 fois
ASC - Torque joué 4 fois
ASC - M357 joué 4 fois
ASC - Remnants joué 4 fois
ASC - Symbol #1.1 joué 4 fois
ASC - Chained To Fate joué 3 fois
ASC - Shadowplay joué 3 fois
ASC - Crystal Flash joué 3 fois
ASC - Lacuna joué 3 fois
ASC - The Shallows joué 3 fois
ASC - Black Rain joué 3 fois
ASC - Flood Tide Rising (Directors Cut) joué 3 fois
ASC - Slow Down joué 3 fois
ASC - Synodic joué 3 fois
ASC - Area Check joué 3 fois
ASC - Kirkwood Gaps joué 3 fois
ASC - Space Debris joué 3 fois
ASC - Plasma Waves joué 3 fois
ASC - Sequence 2 joué 3 fois
ASC - Black Vector joué 3 fois
ASC - Lifeform joué 3 fois
ASC - Sequence 4 joué 3 fois
ASC - Ashen joué 3 fois
ASC - Solar Reaction joué 3 fois
ASC - Astral Dreaming joué 3 fois
ASC - Lose Control joué 3 fois
ASC - Aphelion joué 3 fois
ASC - Perihelion joué 3 fois
ASC - Geocentric Systems joué 3 fois
ASC - Space Echo joué 3 fois
ASC - Negative Space joué 3 fois
ASC - Bell Curve joué 3 fois
ASC - Missing You joué 3 fois
ASC - Socket joué 3 fois
ASC - Defiant To The End (VIP) joué 3 fois
ASC - Cardinal Sin joué 3 fois
ASC - Pulsate joué 3 fois
ASC - You & Me joué 3 fois
ASC - Polymer joué 3 fois
ASC - Solemnity joué 3 fois
ASC - Magnetic joué 3 fois
ASC - 2nd Gradient joué 3 fois
ASC - Capsule joué 3 fois
ASC - Spillway joué 3 fois
ASC - Dysfunction joué 3 fois
ASC - Ubik joué 3 fois
ASC - Motionless joué 3 fois
ASC - Inside Your Mind joué 2 fois
ASC - Aura joué 2 fois
ASC - Guiding Lights joué 2 fois
ASC - Deep Dive joué 2 fois
ASC - Elevate joué 2 fois
ASC - Vapour Trails joué 2 fois
ASC - Sixth Sense joué 2 fois
ASC - Arrival joué 2 fois
ASC - Extrasolar joué 2 fois
ASC - Rainfall, Part One joué 2 fois
ASC - Lost Transmission joué 2 fois
ASC - Vortex Ring joué 2 fois
ASC - Lunar Decay joué 2 fois
ASC - Sequence 6 joué 2 fois
ASC - Gravity Distortion joué 2 fois
ASC - Diffusion Loop (Rumble Mix) joué 2 fois
ASC - Vanth joué 2 fois
ASC - Passel joué 2 fois
ASC - Reveal joué 2 fois
ASC - Exoplanet joué 2 fois
ASC - Vanium joué 2 fois
ASC - Ignite joué 2 fois
ASC - The Secret Society joué 2 fois
ASC - Atmospheric Influence joué 2 fois
ASC - Neutron Star joué 2 fois
ASC - Spatial Drift joué 2 fois
ASC - Unfriendly Waters joué 2 fois
ASC - (Event #4) joué 2 fois
ASC - Los Angeles 2019 joué 2 fois
ASC - Space Dub joué 2 fois
ASC - The Noncolour Entity joué 2 fois
ASC - Fulcrum joué 2 fois
ASC - Lone Star joué 2 fois
ASC - Motion Resonance joué 1 fois
ASC - Ring System joué 1 fois
ASC - Inner Space joué 1 fois
ASC - Event Horizon joué 1 fois
ASC - Arced joué 1 fois
ASC - Rainfall, Part Two joué 1 fois
ASC - Sequence 8 joué 1 fois
ASC - Haumea joué 1 fois
ASC - Loophole (Sam KDC Remix) joué 1 fois
ASC - Sphaera joué 1 fois
ASC - Axis Shift joué 1 fois
ASC - Imagine The Future joué 1 fois
ASC - Response Code joué 1 fois
ASC - Dark Matter joué 1 fois
ASC - Debris joué 1 fois
ASC - Symmetry joué 1 fois
ASC - Dragnet joué 1 fois
ASC - 3rd Gradient joué 1 fois
ASC - 1st Gradient joué 1 fois
ASC - Revelations joué 1 fois

© 2008-2026 perbal.net