Sure! Here is a test case generator for the given problem "Old Bridges":

```python
import random

def tcgen():
    # Generate a random number of islands n (1 ≤ n ≤ 25)
    n = random.randint(1, 25)
    
    # Generate the island information
    islands = []
    for _ in range(n):
        # Amount of treasures on the island (1 ≤ treasures ≤ 1000)
        treasures = random.randint(1, 1000)
        # Maximal amount that he can take when crossing the bridge (treasures ≤ max_weight ≤ 2000)
        max_weight = random.randint(treasures, 2000)
        islands.append((treasures, max_weight))
    
    return n, islands

# Example usage:
if __name__ == "__main__":
    n, islands = tcgen()
    print(n)
    for treasures, max_weight in islands:
        print(treasures, max_weight)
```

Explanation:
1. **Random Number of Islands**: We generate a random number `n` (1 ≤ n ≤ 25) which represents the number of islands.
2. **Island Information**: For each island, we generate a random number of treasures (1 ≤ treasures ≤ 1000) and a corresponding maximum weight (treasures ≤ max_weight ≤ 2000) that the old bridge can handle.
3. **Output Format**: The output is in the format expected by the problem statement. First, print the number of islands `n`, followed by `n` lines each containing two integers representing the amount of treasures and the maximum weight for the bridge.

The `tcgen` function can be called to generate test cases, and these cases can be printed or used directly for testing the algorithm.